SpeechUI.SendTextFeedback(RecognitionResult, String, Boolean) Metodo

Definizione

Invia lo stato e il testo descrittivo all'interfaccia utente della piattaforma Voce 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 valida RecognitionResult .

feedback
String

Oggetto String contenente un commento sull'operazione di riconoscimento che ha generato l'oggetto RecognitionResultresult.

isSuccessfulAction
Boolean

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

Valori restituiti

true se le informazioni fornite al metodo (Feedbacke isSuccessfulAction) sono state rese disponibili correttamente all'interfaccia utente della piattaforma Voce e false se l'operazione non è riuscita.

Esempio

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

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

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 riconosciuto completamente, ma le informazioni di verifica sono errate.

Si applica a