GrammarBuilder.AppendWildcard Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Aggiunge un elemento della grammatica di riconoscimento che corrisponde a qualsiasi input nella sequenza corrente di elementi di grammatica.
public:
void AppendWildcard();
public void AppendWildcard ();
member this.AppendWildcard : unit -> unit
Public Sub AppendWildcard ()
Esempio
Nell'esempio seguente viene creata una grammatica che accetta l'input della password come carattere jolly. Nell'esempio viene collegato un Grammar.SpeechRecognized gestore eventi alla grammatica che convalida l'input della password.
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;
}
Commenti
L'elemento jolly viene aggiunto alla fine della sequenza corrente di elementi.
L'elemento jolly corrisponde a qualsiasi parola parlata. Non corrisponde al rumore di sfondo o al silenzio.