Exemplo n.º 1
0
        private async Task MessageReceivedAsync(IDialogContext context, IAwaitable <object> result)
        {
            var    activity       = await result as IMessageActivity;
            string responseString = string.Empty;
            var    query          = activity.Text.ToString();

            if (query == "regresar")
            {
                context.Call(new FAQDialog(), CallBack);
            }
            else
            {
                var knowledgebaseId         = "64b38a8c-0075-4bc9-8466-79c2148d7b05";
                var qnamakerSubscriptionKey = "EndpointKey c7eb7a4f-937e-47cc-8eca-5308d8f7cd07";

                Uri qnamakerUriBase = new Uri("https://inversionqna.azurewebsites.net/qnamaker");
                var builder         = new UriBuilder($"{qnamakerUriBase}/knowledgebases/{knowledgebaseId}/generateAnswer");
                var postBody        = $"{{\"question\": \"{query}\"}}";

                using (WebClient client = new WebClient())
                {
                    client.Encoding = System.Text.Encoding.UTF8;
                    client.Headers.Add("Authorization", qnamakerSubscriptionKey);
                    client.Headers.Add("Content-Type", "application/json");
                    responseString = client.UploadString(builder.Uri, postBody);
                }
                var receivedAnswer = QnAHelper.HandleResponse(responseString);
                await context.PostAsync(receivedAnswer);

                context.Wait(MessageReceivedAsync);
            }
        }
Exemplo n.º 2
0
        private async Task MessageReceivedAsync(IDialogContext context, IAwaitable <object> result)
        {
            var    activity       = await result as IMessageActivity;
            string responseString = string.Empty;
            var    query          = activity.Text.ToString();

            if (query == "regresar")
            {
                context.Call(new FAQDialog(), CallBack);
            }
            else
            {
                var knowledgebaseId         = "7a8ae76d-dc2d-48d8-9791-2b6008d88f43";
                var qnamakerSubscriptionKey = "EndpointKey d459479f-f29d-40d1-aded-bb0b258603ab";

                Uri qnamakerUriBase = new Uri("https://aforeqna2.azurewebsites.net/qnamaker");
                var builder         = new UriBuilder($"{qnamakerUriBase}/knowledgebases/{knowledgebaseId}/generateAnswer");
                var postBody        = $"{{\"question\": \"{query}\"}}";

                using (WebClient client = new WebClient())
                {
                    client.Encoding = System.Text.Encoding.UTF8;
                    client.Headers.Add("Authorization", qnamakerSubscriptionKey);
                    client.Headers.Add("Content-Type", "application/json");
                    responseString = client.UploadString(builder.Uri, postBody);
                }
                var receivedAnswer = QnAHelper.HandleResponse(responseString);
                await context.PostAsync(receivedAnswer);

                context.Wait(MessageReceivedAsync);
            }
        }
Exemplo n.º 3
0
        private async Task MessageReceivedAsync(IDialogContext context, IAwaitable <object> result)
        {
            var    activity       = await result as IMessageActivity;
            string responseString = string.Empty;
            var    query          = activity.Text.ToString();

            string host          = "";
            string EndpointKey   = "";
            string knowledgeBase = "";

            var builder  = new UriBuilder($"{host}/qnamaker/knowledgebases/{knowledgeBase}/generateAnswer");
            var postBody = $"{{\"question\": \"{query}\"}}";

            using (WebClient client = new WebClient())
            {
                client.Encoding = System.Text.Encoding.UTF8;
                client.Headers.Add("Authorization", EndpointKey);
                client.Headers.Add("Content-Type", "application/json");
                responseString = client.UploadString(builder.Uri, postBody);
            }
            var receivedAnswer = QnAHelper.HandleResponse(responseString);
            await context.PostAsync(receivedAnswer);

            context.Wait(MessageReceivedAsync);
        }