diff --git a/samples/SocketsSample/Hubs/Chat.cs b/samples/SocketsSample/Hubs/Chat.cs index a01e1dec00..64849963f0 100644 --- a/samples/SocketsSample/Hubs/Chat.cs +++ b/samples/SocketsSample/Hubs/Chat.cs @@ -17,7 +17,7 @@ namespace SocketsSample.Hubs public override async Task OnDisconnectedAsync(Exception ex) { - await Clients.All.InvokeAsync("Send", $"{Context.ConnectionId} left"); + await Clients.Others.InvokeAsync("Send", $"{Context.ConnectionId} left"); } public Task Send(string message) @@ -25,11 +25,21 @@ namespace SocketsSample.Hubs return Clients.All.InvokeAsync("Send", $"{Context.ConnectionId}: {message}"); } + public Task SendToOthers(string message) + { + return Clients.Others.InvokeAsync("Send", $"{Context.ConnectionId}: {message}"); + } + public Task SendToGroup(string groupName, string message) { return Clients.Group(groupName).InvokeAsync("Send", $"{Context.ConnectionId}@{groupName}: {message}"); } + public Task SendToOthersInGroup(string groupName, string message) + { + return Clients.OthersInGroup(groupName).InvokeAsync("Send", $"{Context.ConnectionId}@{groupName}: {message}"); + } + public async Task JoinGroup(string groupName) { await Groups.AddAsync(Context.ConnectionId, groupName); @@ -39,14 +49,14 @@ namespace SocketsSample.Hubs public async Task LeaveGroup(string groupName) { - await Groups.RemoveAsync(Context.ConnectionId, groupName); - await Clients.Group(groupName).InvokeAsync("Send", $"{Context.ConnectionId} left {groupName}"); + + await Groups.RemoveAsync(Context.ConnectionId, groupName); } public Task Echo(string message) { - return Clients.Client(Context.ConnectionId).InvokeAsync("Send", $"{Context.ConnectionId}: {message}"); + return Clients.Caller.InvokeAsync("Send", $"{Context.ConnectionId}: {message}"); } } } diff --git a/samples/SocketsSample/Hubs/DynamicChat.cs b/samples/SocketsSample/Hubs/DynamicChat.cs index 5966a7267d..e1b11956c8 100644 --- a/samples/SocketsSample/Hubs/DynamicChat.cs +++ b/samples/SocketsSample/Hubs/DynamicChat.cs @@ -16,7 +16,7 @@ namespace SocketsSample.Hubs public override async Task OnDisconnectedAsync(Exception ex) { - await Clients.All.Send($"{Context.ConnectionId} left"); + await Clients.Others.Send($"{Context.ConnectionId} left"); } public Task Send(string message) @@ -24,11 +24,21 @@ namespace SocketsSample.Hubs return Clients.All.Send($"{Context.ConnectionId}: {message}"); } + public Task SendToOthers(string message) + { + return Clients.Others.Send($"{Context.ConnectionId}: {message}"); + } + public Task SendToGroup(string groupName, string message) { return Clients.Group(groupName).Send($"{Context.ConnectionId}@{groupName}: {message}"); } + public Task SendToOthersInGroup(string groupName, string message) + { + return Clients.OthersInGroup(groupName).Send($"{Context.ConnectionId}@{groupName}: {message}"); + } + public async Task JoinGroup(string groupName) { await Groups.AddAsync(Context.ConnectionId, groupName); @@ -38,14 +48,14 @@ namespace SocketsSample.Hubs public async Task LeaveGroup(string groupName) { - await Groups.RemoveAsync(Context.ConnectionId, groupName); - await Clients.Group(groupName).Send($"{Context.ConnectionId} left {groupName}"); + + await Groups.RemoveAsync(Context.ConnectionId, groupName); } public Task Echo(string message) { - return Clients.Client(Context.ConnectionId).Send($"{Context.ConnectionId}: {message}"); + return Clients.Caller.Send($"{Context.ConnectionId}: {message}"); } } } diff --git a/samples/SocketsSample/Hubs/HubTChat.cs b/samples/SocketsSample/Hubs/HubTChat.cs index c96b3867e4..b352bf7747 100644 --- a/samples/SocketsSample/Hubs/HubTChat.cs +++ b/samples/SocketsSample/Hubs/HubTChat.cs @@ -16,7 +16,7 @@ namespace SocketsSample.Hubs public override async Task OnDisconnectedAsync(Exception ex) { - await Clients.All.Send($"{Context.ConnectionId} left"); + await Clients.Others.Send($"{Context.ConnectionId} left"); } public Task Send(string message) @@ -24,11 +24,21 @@ namespace SocketsSample.Hubs return Clients.All.Send($"{Context.ConnectionId}: {message}"); } + public Task SendToOthers(string message) + { + return Clients.Others.Send($"{Context.ConnectionId}: {message}"); + } + public Task SendToGroup(string groupName, string message) { return Clients.Group(groupName).Send($"{Context.ConnectionId}@{groupName}: {message}"); } + public Task SendToOthersInGroup(string groupName, string message) + { + return Clients.OthersInGroup(groupName).Send($"{Context.ConnectionId}@{groupName}: {message}"); + } + public async Task JoinGroup(string groupName) { await Groups.AddAsync(Context.ConnectionId, groupName); @@ -38,14 +48,14 @@ namespace SocketsSample.Hubs public async Task LeaveGroup(string groupName) { - await Groups.RemoveAsync(Context.ConnectionId, groupName); - await Clients.Group(groupName).Send($"{Context.ConnectionId} left {groupName}"); + + await Groups.RemoveAsync(Context.ConnectionId, groupName); } public Task Echo(string message) { - return Clients.Client(Context.ConnectionId).Send($"{Context.ConnectionId}: {message}"); + return Clients.Caller.Send($"{Context.ConnectionId}: {message}"); } } diff --git a/samples/SocketsSample/wwwroot/hubs.html b/samples/SocketsSample/wwwroot/hubs.html index 451950b3c1..30c069709b 100644 --- a/samples/SocketsSample/wwwroot/hubs.html +++ b/samples/SocketsSample/wwwroot/hubs.html @@ -1,4 +1,4 @@ - +
@@ -24,10 +24,9 @@