Azure SignalR API Add to Group

1.8k Views Asked by At

I have been using the Azure SignalR API just fine for sending messages to groups, everyone and single users.

I have a problem adding a user to a group though.

I execute the request as per https://learn.microsoft.com/en-us/azure/azure-signalr/signalr-quickstart-rest-api#add-user-to-group and while i get a success response, the user is not added to group.

var url = "xxx.service.signalr.net/api/v1/hubs/<hub-name>/groups/<group-name>/users/<userid>"

var request = new HttpRequestMessage(HttpMethod.Put, _azureSignalRUtilities.GetUrl(url));

request.Headers.Authorization = new AuthenticationHeaderValue("Bearer",
            _azureSignalRUtilities.GenerateAccessToken(url, _serverName));
request.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

I have copied the samples from https://github.com/aspnet/AzureSignalR-samples/tree/master/samples/Serverless

1

There are 1 best solutions below

0
Rahul Ruikar On

With some changes to the sample application and adding new methods to add/remove users from a group, I am able to add/remove a specific user to the group and send messages to that group.

I have group name hardcoded in this sample as "TestGroup"

Client output

Started 2 client "123" and "456" enter image description here

Server Output

  1. only user "123" is added to group "TestGroup"
  2. Message is sent to group "TestGroup", it was received only by "123"
  3. User "123" is removed from the group.

There was some issue with the sample code. enter image description here

  1. Message is again sent to Group but none of user is part of "TestGroup' and it was not received by any of users. enter image description here

I have modified sample application to add 2 methods for this addusertogroup removeuserfromgroup also corrected "send group "

Note : I found that group name is case-sensitive

complete code is available in this repository https://github.com/rahulruikar/Serverless