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 texto de estado y descriptivo a la interfaz de usuario de la plataforma de voz acerca del 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
Instancia válida RecognitionResult.
- feedback
- String
String que contiene un comentario sobre la operación de reconocimiento que generó RecognitionResultresult
.
- isSuccessfulAction
- Boolean
Valor bool
que indica si la aplicación consideró correcta la operación de reconocimiento.
Devoluciones
Es true
si la información proporcionada al método (Feedback
e isSuccessfulAction
) se puso correctamente a disposición de la interfaz de usuario de la plataforma de voz, y es false
si la operación no se realizó correctamente.
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 reconocía por completo, pero la información de verificación era incorrecta.