Compartilhar via


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

Definição

Envia o status e o texto descritivo para a interface do usuário da plataforma de Fala sobre o status 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

Uma instância de RecognitionResult válida.

feedback
String

Um String que contém um comentário sobre a operação de reconhecimento que produziu o RecognitionResultresult.

isSuccessfulAction
Boolean

Um bool que indica se o aplicativo considerou a operação de reconhecimento um sucesso.

Retornos

true se as informações fornecidas para o método (Feedback e isSuccessfulAction) foram disponibilizadas com êxito para a interface do usuário da plataforma de Fala ou então false se a operação falhou.

Exemplos

O exemplo a seguir é um manipulador para um SpeechRecognized evento . Esse evento é usado por um Grammar que foi projetado para manipular a entrada de senha do formulário, "Minha senha é ...".

Se uma senha não estiver presente ou não for válida, SendTextFeedback será usado para enviar informações de erro para a interface do usuário da plataforma de Fala.

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);  
    }  
  }  
};  

Comentários

SendTextFeedback pode ser usado para indicar que uma operação de reconhecimento falhou ao atender a determinados critérios, mesmo que a entrada tenha sido reconhecida.

Um exemplo é a verificação de informações de código de segurança, em que a entrada foi totalmente reconhecida, mas as informações de verificação estavam erradas.

Aplica-se a