SpeechUI.SendTextFeedback(RecognitionResult, String, Boolean) Método

Definição

Envia estado e texto descritivo para a interface de utilizador da plataforma de voz sobre o estado de uma operação de reconhecimento.

public:
 static bool SendTextFeedback(System::Speech::Recognition::RecognitionResult ^ result, System::String ^ feedback, bool isSuccessfulAction);
public static bool SendTextFeedback(System.Speech.Recognition.RecognitionResult result, string feedback, bool isSuccessfulAction);
static member SendTextFeedback : System.Speech.Recognition.RecognitionResult * string * bool -> bool
Public Shared Function SendTextFeedback (result As RecognitionResult, feedback As String, isSuccessfulAction As Boolean) As Boolean

Parâmetros

result
RecognitionResult

Um exemplo válido RecognitionResult .

feedback
String

A String contendo um comentário sobre a operação de reconhecimento que produziu o RecognitionResultresult.

isSuccessfulAction
Boolean

A indicando se a candidatura considerou bool a operação de reconhecimento um sucesso.

Devoluções

true se a informação fornecida ao método (Feedback, e isSuccessfulAction) foi disponibilizada com sucesso à interface de utilizador da plataforma de voz, e false se a operação falhou.

Exemplos

O exemplo seguinte é um handler para um SpeechRecognized evento. Este evento é usado por um Grammar que foi concebido para gerir a introdução de palavras-passe do formulário, "A minha palavra-passe é ...".

Se não houver uma palavra-passe presente ou não for válida, o SendTextFeedback é usado para enviar informações de erro para a interface da plataforma de voz.

grammar.SpeechRecognized +=
delegate(object sender, SpeechRecognizedEventArgs eventArgs)
{
  SemanticValue semantics = eventArgs.Result.Semantics;
  RecognitionResult result=eventArgs.Result;

  if (!semantics.ContainsKey("Password"))
  {
    SpeechUI.SendTextFeedback(eventArgs.Result, "No Password Provided", false);
  }
  else
  {
    RecognizedAudio pwdAudio = result.GetAudioForWordRange(
              result.Words[3],
              result.Words[result.Words.Count - 1]);
    MemoryStream pwdMemoryStream = new MemoryStream();
    pwdAudio.WriteToAudioStream(pwdMemoryStream);
    if (!IsValidPwd(pwdMemoryStream))
    {
      string badPwd = System.IO.Path.GetTempPath() + "BadPwd" +
               (new Random()).Next().ToString() + ".wav";
      FileStream waveStream = new FileStream(badPwd, FileMode.Create);
      pwdAudio.WriteToWaveStream(waveStream);
      waveStream.Flush();
      waveStream.Close();
      SpeechUI.SendTextFeedback(eventArgs.Result, "Invalid Password", false);
    }
  }
};

Observações

SendTextFeedback pode ser usado para indicar que uma operação de reconhecimento não cumpriu certos critérios, mesmo que a entrada tenha sido reconhecida.

Um exemplo é a verificação da informação do código de segurança, onde a entrada foi totalmente reconhecida, mas a informação de verificação estava errada.

Aplica-se a