public void Send(RecipeSearchResultViewModel recipeModel) { // TODO: Save suggestion // TODO: Get all flatmates ids var context = GlobalHost.ConnectionManager.GetHubContext<RecipeSuggestionsHub>(); this.usersService.GetFlatmates(this.User.Identity.GetUserId()) .Select(x => x.Id) .ToList() .ForEach(x => { var connectionId = this.hub.ConnectionsDictionary[x]; context.Clients.Client(connectionId).receiveRecipe("hello wordld"); }); context.Clients.Client(this.User.Identity.GetUserId()).receiveRecipe("Hey, invoker! "); }
public void Send(RecipeSearchResultViewModel recipe) { var recipeId = this.recipesService.CreateBasic(recipe.Id, recipe.Title, recipe.ImageUrl, recipe.SocialRank); var senderId = Context.User.Identity.GetUserId(); var suggestion = this.suggestionsService.Create(senderId, recipeId, string.Empty); // TODO: Map var flatmates = this.usersService.GetFlatmates(senderId); var flatIds = flatmates.Select(x => x.Id).ToList(); foreach (var id in flatIds) { if (this.ConnectionsDictionary.ContainsKey(id)) { var connectionId = this.ConnectionsDictionary[id]; Clients.Client(connectionId).receiveRecipe(suggestion); } } }