예제 #1
0
        private async Task SelectDialog(IDialogContext context, IAwaitable <IMessageActivity> result)
        {
            var message = await result;

            convert = await ZenkakuConvert.Convert(message.Text);

            if (convert == "1")
            {
                context.Call(new FAQDialog(), QnaResumeAfterDialog);
            }
            else if (convert == "2")
            {
                await context.PostAsync("ご利用ありがとうございました。最後にアンケートをお願いできますか?");

                context.Call(new EnqueteDialog(), EnqueteResumeAfterDialog);
            }
        }
예제 #2
0
        private async Task FeedbackDialog(IDialogContext context, IAwaitable <IMessageActivity> result)
        {
            var feedbackMenu = await result;

            convert = await ZenkakuConvert.Convert(feedbackMenu.Text);

            if (convert == "1")
            {
                await context.PostAsync("ご利用ありがとうございました。");
                await MenuMessage(context);
            }
            else if (convert == "2")
            {
                await context.PostAsync("どのような回答をご希望でしたか?");

                context.Wait(InputMessage);
            }
        }
        private async Task ShowAnswer(IDialogContext context, IAwaitable <IMessageActivity> item)
        {
            var num    = await item;
            var result = JsonConvert.DeserializeObject <QnAMakerResults>(json);

            convert = await ZenkakuConvert.Convert(num.Text);

            if (flag == 0)
            {
                if (Int32.Parse(convert) >= 1 && Int32.Parse(convert) <= displayNum)
                {
                    await context.PostAsync(result.Answers[Int32.Parse(convert) - 1].Answer.ToString());
                    await FeedbackMessage(context);
                }
                else if (Int32.Parse(convert) == displayNum + 1)
                {
                    flag = 1;

                    await context.PostAsync("次の候補を表示します。");
                    await ShowQuestions(context, result);
                }
                else
                {
                    await ShowQuestions(context, result);
                }
            }
            else if (flag == 1 || flag == 2)
            {
                if (Int32.Parse(convert) >= 1 && Int32.Parse(convert) <= result.Answers.Count)
                {
                    await context.PostAsync(result.Answers[Int32.Parse(convert) - 1].Answer.ToString());
                    await FeedbackMessage(context);
                }
                else if (Int32.Parse(convert) == result.Answers.Count + 1)
                {
                    await context.PostAsync("お役に立てず申し訳ございません。。");
                    await FeedbackMessage(context);
                }
                else
                {
                    await ShowQuestions(context, result);
                }
            }
        }
예제 #4
0
        private async Task ShowAnswer(IDialogContext context, IAwaitable <IMessageActivity> item)
        {
            var num    = await item;
            var result = JsonConvert.DeserializeObject <QnAMakerResults>(json);

            convert = await ZenkakuConvert.Convert(num.Text);

            if (Int32.Parse(convert) >= 1 && Int32.Parse(convert) <= result.Answers.Count)
            {
                await context.PostAsync(result.Answers[Int32.Parse(convert) - 1].Answer.ToString());

                context.Done <object>(null);
            }
            else if (Int32.Parse(convert) == result.Answers.Count + 1)
            {
                await context.PostAsync("お役に立てず申し訳ございません。。");

                context.Done <object>(null);
            }
            else
            {
                await ShowQuestions(context, result);
            }
        }