Share via


SpeechUI.SendTextFeedback(RecognitionResult, String, Boolean) Metodo

Definizione

Invia lo stato e il testo descrittivo all'interfaccia utente della piattaforma vocale sullo stato di un'operazione di riconoscimento.

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

Parametri

result
RecognitionResult

Istanza di RecognitionResult valida.

feedback
String

String contenente un commento sull'operazione di riconoscimento che ha prodotto RecognitionResultresult.

isSuccessfulAction
Boolean

bool che indica se l'applicazione ha considerato l'operazione di riconoscimento completata.

Restituisce

true se informazioni fornite al metodo (Feedback e a isSuccessfulAction) vengono messe correttamente a disposizione dell'interfaccia utente della piattaforma Speech; false se l'operazione ha esito negativo.

Esempio

L'esempio seguente è un gestore per un SpeechRecognized evento. Questo evento viene usato da un Grammar oggetto progettato per gestire l'input della password del modulo, "La password è ...".

Se una password non è presente o non è valida, SendTextFeedback viene usata per inviare informazioni sull'errore all'interfaccia utente della piattaforma Speech.

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

Commenti

SendTextFeedback può essere usato per indicare che un'operazione di riconoscimento non è riuscita a soddisfare determinati criteri, anche se l'input è stato riconosciuto.

Un esempio è la verifica delle informazioni sul codice di sicurezza, in cui l'input è stato completamente riconosciuto, ma le informazioni di verifica sono state sbagliate.

Si applica a