Udostępnij za pośrednictwem


SpeechUI.SendTextFeedback(RecognitionResult, String, Boolean) Metoda

Definicja

Wysyła stan i tekst opisowy do interfejsu użytkownika platformy mowa o stanie operacji rozpoznawania.

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

Parametry

result
RecognitionResult

Prawidłowe RecognitionResult wystąpienie.

feedback
String

Element String zawierający komentarz dotyczący operacji rozpoznawania, która wyprodukowała RecognitionResultresultelement .

isSuccessfulAction
Boolean

Element bool wskazujący, czy aplikacja uznała operację rozpoznawania za powodzenie.

Zwraca

true jeśli informacje podane do metody (Feedbacki isSuccessfulAction) zostały pomyślnie udostępnione interfejsowi użytkownika platformy mowa i false jeśli operacja nie powiodła się.

Przykłady

Poniższy przykład to procedura obsługi zdarzenia SpeechRecognized . To zdarzenie jest używane przez element Grammar przeznaczony do obsługi wprowadzania hasła formularza "Moje hasło jest ...".

Jeśli hasło nie jest obecne lub nieprawidłowe, funkcja SendTextFeedback jest używana do wysyłania informacji o błędzie do interfejsu użytkownika platformy mowa.

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

Uwagi

SendTextFeedback może służyć do wskazania, że operacja rozpoznawania nie spełnia określonych kryteriów, nawet jeśli dane wejściowe zostały rozpoznane.

Przykładem jest weryfikacja informacji o kodzie zabezpieczeń, gdzie dane wejściowe zostały w pełni rozpoznane, ale informacje weryfikacyjne były nieprawidłowe.

Dotyczy