public async Task <bool> SendSelectMainTeamFlowAsync(Message message, UserContext userContext, CancellationToken cancellationToken) { try { if (message.Content.ToString().Contains("SelectMainTeam_")) { var teamTag = message.Content.ToString().Split('_')[1]; var teamListName = "Alert_" + teamTag; await _broadcastExtension.UpdateDistributionListAsync(teamListName, message.From.ToIdentity(), cancellationToken); userContext.MainTeam = teamTag; userContext.AlertTeams.Add(teamTag); await _contextManager.SetUserContextAsync(message.From, userContext, cancellationToken); await _sender.SendMessageAsync("Awesome! I added you to my list for that team and will notify you of any matches 30mins earlier!", message.From, cancellationToken); } await _sender.SendDelayedComposingAsync(message.From, 2000, cancellationToken); await _sender.SendMessageAsync("What can I help you with?", message.From, cancellationToken); var carousel = _carouselBuilder.GetMainMenuCarousel(); carousel.To = message.From; await _sender.SendMessageAsync(carousel, cancellationToken); return(true); } catch (Exception ex) { return(false); } }
public async Task UpdateDistributionListAsync(string test, bool expectedResult) { var result = await broadcastExtension.UpdateDistributionListAsync(test, node.ToIdentity(), cancellationToken); result.ShouldBe(expectedResult); }