public async Task <ActionResult <ICollection <RoomModel> > > GetRooms( [FromHeader(Name = "notifications-connection-id")][Required] string connectionId) { var userId = _identityService.GetUserIdentity(); var roomsResult = await _roomsService.GetAllAsync(userId); if (!roomsResult.Succeeded) { return(BadRequest(roomsResult.Errors)); } // subscribe var rooms = new List <Grpc.Clients.Notifications.Models.Room>(); foreach (var roomModel in roomsResult.Data) { var room = new Grpc.Clients.Notifications.Models.Room { Id = roomModel.Id, MembersIds = roomModel.Members.Select(m => m.Id).ToArray() }; rooms.Add(room); } await _notificationsGrpcService.SubscribeToRoomsUpdatesAsync(userId, connectionId, rooms.ToArray()); // return return(Ok(roomsResult.Data)); }