你怎么让c#要求确认?

时间:2017-03-23 21:34:56

标签: c# speech-recognition voice-recognition

我无法弄清楚如何制作它,以便如果我问我的C#语音应用程序,“Call Mark”它会要求确认,只有在我说“是”时才打电话给他。

case "Call Mark:
    speak.SpeakAsync("Are you sure");

        break;

我猜我必须使用一个Bool,但我不知道如何不用它,以便在你说“打电话马克”之前我必须说“是”。我尝试的另一种方式就是这样做,当我说“是”时,它会打电话给他。

2 个答案:

答案 0 :(得分:1)

最好的办法是让.SpeakAsync()方法返回一个bool。然后你会在实际拨打电话之前检查结果。

case "Call Mark":
    bool confirmationResult = speak.SpeakAsync("Are you sure");
    if (confirmationResult)
        MakeCall();
    break;

答案 1 :(得分:0)

为了清楚起见,我将使用高级算法表达我的答案。

  1. 等待接收" Call Mark"
  2. 说话"你确定吗?"
  3. 如果答案是"是",请拨打Mark。
  4. 在代码中:

    if (speech = "CALL MARK) {
        var string input = Api.DetectSpeech(Source.Microphone);
        if (input = "YES") {
            Phone.DialNumber(Contacts.Mark);
        }
    }