SpeechUI.SendTextFeedback(RecognitionResult, String, Boolean) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Envía el estado y el texto descriptivo a la interfaz de usuario de la plataforma de voz sobre el estado de una operación de reconocimiento.
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
Una instancia válida RecognitionResult .
- feedback
- String
que String contiene un comentario sobre la operación de reconocimiento que generó .RecognitionResultresult
- isSuccessfulAction
- Boolean
que bool indica si la aplicación considera que la operación de reconocimiento se ha realizado correctamente.
Devoluciones
true si la información proporcionada al método (Feedbacky isSuccessfulAction) estaba disponible correctamente para la interfaz de usuario de la plataforma de voz y false si se produjo un error en la operación.
Ejemplos
El ejemplo siguiente es un controlador para un SpeechRecognized evento. Este evento lo usa un Grammar que está diseñado para controlar la entrada de contraseña del formulario, "Mi contraseña es ...".
Si una contraseña no está presente o no es válida, SendTextFeedback se usa para enviar información de error a la interfaz de usuario de la plataforma de voz.
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);
}
}
};
Comentarios
SendTextFeedback se puede usar para indicar que una operación de reconocimiento no pudo cumplir ciertos criterios, incluso si se reconoció la entrada.
Un ejemplo es la comprobación de la información del código de seguridad, donde la entrada se reconoció por completo, pero la información de comprobación no era correcta.