Sdílet prostřednictvím


SpeechUI.SendTextFeedback(RecognitionResult, String, Boolean) Metoda

Definice

Odešle do uživatelského rozhraní platformy Speech stav a popisný text o stavu operace rozpoznávání.

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

Platná RecognitionResult instance.

feedback
String

A String obsahující komentář k operaci rozpoznávání, která vytvořila RecognitionResultresult.

isSuccessfulAction
Boolean

A bool označující, zda aplikace považovala operaci rozpoznávání za úspěšnou.

Návraty

true pokud se informace poskytnuté metodě (Feedbacka isSuccessfulAction) úspěšně zpřístupnily uživatelskému rozhraní platformy Speech a false operace selhala.

Příklady

Následující příklad je obslužná rutina SpeechRecognized události. Tato událost je používána uživatelem Grammar , který je určený ke zpracování zadání hesla formuláře "Moje heslo je ...".

Pokud heslo není k dispozici nebo není platné, sendTextFeedback se použije k odeslání informací o chybách do uživatelského rozhraní platformy 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);
    }
  }
};

Poznámky

SendTextFeedback lze použít k označení, že operace rozpoznávání nesplní určitá kritéria, i když byl vstup rozpoznán.

Příkladem je ověření informací o bezpečnostním kódu, kdy byl vstup plně rozpoznán, ale ověřovací informace byly chybné.

Platí pro