private async Task <DialogTurnResult> SummaryStepAsync(WaterfallStepContext stepContext, CancellationToken cancellationToken) { if ((bool)stepContext.Result) { AzureDetails.SubscriptionID = (string)stepContext.Values["Subscription ID"]; AzureDetails.TenantID = (string)stepContext.Values["Tenant ID"]; AzureDetails.ClientID = (string)stepContext.Values["Client ID"]; AzureDetails.ClientSecret = (string)stepContext.Values["Client Secret"]; var msg = "Here are the details you provided:\nSubscription ID: " + AzureDetails.SubscriptionID + ", Tenant ID: " + AzureDetails.TenantID + ", ClientID: " + AzureDetails.ClientID + ", Client Secret: ****************"; await stepContext.Context.SendActivityAsync(MessageFactory.Text(msg)); AzureResourceManagerREST.GetAuthorizationToken(); if (AzureDetails.AccessToken == null) { await stepContext.Context.SendActivityAsync(MessageFactory.Text("Request failed. Access token not generated. Retry again.")); } else { await stepContext.Context.SendActivityAsync(MessageFactory.Text("Thank you, Request is Confirmed. You are now successfully connected to Azure Services.")); } return(await stepContext.EndDialogAsync(null, cancellationToken)); } else { await stepContext.Context.SendActivityAsync(MessageFactory.Text("Request Not Confirmed.")); return(await stepContext.EndDialogAsync(cancellationToken : cancellationToken)); } }
private async Task <DialogTurnResult> LUISStepAsync(WaterfallStepContext stepContext, CancellationToken cancellationToken) { await LuisHelper.ExecuteLuisQuery(Configuration, Logger, stepContext.Context, cancellationToken); var intentValue = (string)stepContext.Result; switch (AzureDetails.Intent) { case "GetAllResourceGroupsIntent": AzureResourceManagerREST.getAllResourceGroupDetails().GetAwaiter().GetResult(); await stepContext.Context.SendActivityAsync(MessageFactory.Text("Here is the details of all your resource groups:")); await stepContext.Context.SendActivityAsync(MessageFactory.Text(AzureDetails.Response)); break; case "Cancel": AzureDetails.AccessToken = null; AzureDetails.SubscriptionID = null; AzureDetails.TenantID = null; AzureDetails.ClientID = null; AzureDetails.ClientSecret = null; await stepContext.Context.SendActivityAsync(MessageFactory.Text("You are now successfully disconnected from Azure services. Your Azure details has been cleared.")); break; case "CreateResourceGroupIntent": return(await stepContext.BeginDialogAsync(nameof(CreateResourceGroupDialog), new User(), cancellationToken)); default: await stepContext.Context.SendActivityAsync(MessageFactory.Text("Kindly rephrase your query.")); break; } return(await stepContext.NextAsync(null, cancellationToken)); }
private async Task <DialogTurnResult> SummaryStepAsync(WaterfallStepContext stepContext, CancellationToken cancellationToken) { if ((bool)stepContext.Result) { AzureDetails.ResourceGroupName = (string)stepContext.Values["Resource Group Name"]; AzureDetails.Location = (string)stepContext.Values["Location"]; AzureResourceManagerREST.createResourceGroup().GetAwaiter().GetResult(); await stepContext.Context.SendActivityAsync(MessageFactory.Text("Here is the response from Azure.")); await stepContext.Context.SendActivityAsync(MessageFactory.Text(AzureDetails.Response)); return(await stepContext.EndDialogAsync(null, cancellationToken)); } else { await stepContext.Context.SendActivityAsync(MessageFactory.Text("Request Not Confirmed.")); return(await stepContext.EndDialogAsync(cancellationToken : cancellationToken)); } }