GrammarBuilder.AppendWildcard 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í.
Anexa un elemento de gramática de reconocimiento que coincide con cualquier entrada a la secuencia actual de elementos de gramática.
public:
void AppendWildcard();
public void AppendWildcard ();
member this.AppendWildcard : unit -> unit
Public Sub AppendWildcard ()
Ejemplos
En el ejemplo siguiente se crea una gramática que acepta la entrada de contraseña como carácter comodín. En el ejemplo se adjunta un Grammar.SpeechRecognized controlador de eventos a la gramática que valida la entrada de contraseña.
private Grammar CreatePasswordGrammar()
{
GrammarBuilder wildcardBuilder = new GrammarBuilder();
wildcardBuilder.AppendWildcard();
SemanticResultKey passwordKey =
new SemanticResultKey("Password", wildcardBuilder);
GrammarBuilder passwordBuilder =
new GrammarBuilder("My Password is");
passwordBuilder.Append(passwordKey);
Grammar passwordGrammar = new Grammar(passwordBuilder);
passwordGrammar.Name = "Password input";
passwordGrammar.SpeechRecognized +=
new EventHandler<SpeechRecognizedEventArgs>(
PasswordInputHandler);
return passwordGrammar;
}
// Handle the SpeechRecognized event for the password grammar.
private void PasswordInputHandler(object sender, SpeechRecognizedEventArgs e)
{
if (e.Result == null) return;
RecognitionResult result = e.Result;
SemanticValue semantics = e.Result.Semantics;
if (semantics.ContainsKey("Password"))
{
RecognizedAudio passwordAudio =
result.GetAudioForWordRange(
result.Words[3], result.Words[result.Words.Count - 1]);
if (IsValidPassword(passwordAudio))
{
Console.WriteLine("Password accepted.");
// Add code to handle a valid password here.
}
else
{
Console.WriteLine("Invalid password.");
// Add code to handle an invalid password here.
}
}
}
// Validate the password input.
private bool IsValidPassword(RecognizedAudio passwordAudio)
{
Console.WriteLine("Validating password.");
// Add password validation code here.
return false;
}
Comentarios
El elemento comodín se agrega al final de la secuencia actual de elementos.
El elemento comodín coincide con cualquier palabra hablada. No coincide con el ruido de fondo ni el silencio.