public virtual async Task MessageReceivedAsync(IDialogContext context, IAwaitable <IMessageActivity> item)
        {
            var message = await item;

            json = await CustomQnAMaker.GetResultAsync(message.Text);

            if (json != "failure")
            {
                var result = JsonConvert.DeserializeObject <QnAMakerResults>(json);

                httpResponseJson = JsonConvert.DeserializeObject(json);

                if (result.Answers[0].Answer == "No good match found in KB.")
                {
                    await context.PostAsync("質問に対する回答が見つかりませんでした。");

                    context.Done <object>(null);
                }
                else
                {
                    flag = 0;
                    await ShowQuestions(context, result);
                }
            }
        }
Ejemplo n.º 2
0
        public async Task OnTurnAsync(ITurnContext context, CancellationToken cancellationToken = default(CancellationToken))
        {
            if (context.Activity.Type == ActivityTypes.Message)
            {
                var response = await CustomQnAMaker.GetResults(context.Activity.Text);

                var qnaResponse = JsonConvert.DeserializeObject <QnaResponse>(response);

                if (response != "failure")
                {
                    //if (!response.Any())
                    if (qnaResponse.answers[0].score < 10.0)
                    {
                        await context.SendActivityAsync("回答が見つかりませんでした。");
                    }
                    else
                    {
                        await context.SendActivityAsync($"{qnaResponse.answers[0].answer}");

                        /*
                         * if (qnaResponse.answers.Count() >= 2)
                         * {
                         *  await context.SendActivityAsync($"自信がないので他の回答もお伝えします\n\n{qnaResponse.answers[1].answer}");
                         * }
                         */
                    }
                }
            }
            else
            {
                //await context.SendActivityAsync($"{context.Activity.Type} event detected");
                await context.SendActivityAsync($"ようこそ!");
            }
        }
Ejemplo n.º 3
0
        public virtual async Task MessageReceivedAsync(IDialogContext context, IAwaitable <IMessageActivity> item)
        {
            var message = await item;

            json = await CustomQnAMaker.GetResultAsync(message.Text);


            if (json != "failure")
            {
                var result  = JsonConvert.DeserializeObject <QnAMakerResults>(json);
                var result2 = JsonConvert.DeserializeObject <QnAMakerResult>(json);

                if (result2.Score == 0)
                {
                    await context.PostAsync("質問に対する回答が見つかりませんでした。");
                }

                await ShowQuestions(context, result);
            }
        }
        public virtual async Task MessageReceivedAsync(IDialogContext context, IAwaitable <IMessageActivity> item)
        {
            var message = await item;

            json = await CustomQnAMaker.GetResultAsync(message.Text);

            if (json != "failure")
            {
                var result = JsonConvert.DeserializeObject <QnAMakerResults>(json);

                if (result.Answers[0].Score == 0)
                {
                    await ShowNoFAQ(context);
                }
                else
                {
                    await ShowQuestions(context, result);
                }
            }
        }