public async Task <ActionResult> Post([FromForm] string payload) { return(JsonConvert.DeserializeObject <InteractionPayload>(payload) switch { BlockActionsPayload blocks => await SendResult(blocks), _ => new OkObjectResult("Unsupported - sorry!") });
public async Task <ActionResult> Post([FromForm] string payload) { return(JsonConvert.DeserializeObject <InteractionPayload>(payload) switch { ViewSubmissionPayload submission => await SendApprovalRequest(submission), GlobalShortcutPayload shortcut => await GenerateModal(shortcut), BlockActionsPayload blocks => await SendResult(blocks), _ => new OkObjectResult("Unsupported - sorry!") });
private async Task CloseVoteAsync(BlockActionsPayload p, string username) { var pokerHand = pokerHandRepository.GetPokerHand(p.Message.Timestamp.ToString()); var setOfGroups = new List <UserGroupWithUsers>(); foreach (var g in pokerHand.UserGroups) { setOfGroups.Add(new UserGroupWithUsers() { UserIds = g.UserIds, UserGroupHandle = g.UserGroupHandle }); } var message = MessageHelpers.GetMessageWithVotesClosed(p.Message.Blocks, setOfGroups, pokerHand.Votes, username); await message.Send(p.ResponseUrl); pokerHandRepository.DeleteHand(p.Message.Timestamp.ToString()); }
public SlackAction(PayloadAction action, BlockActionsPayload payload) { Action = action; Payload = payload; }