RecognizerUpdateReachedEventArgs.UserToken Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
UserToken Získá předán do systému, když aplikace volá RequestRecognizerUpdate nebo RequestRecognizerUpdate.
public:
property System::Object ^ UserToken { System::Object ^ get(); };
public object? UserToken { get; }
public object UserToken { get; }
member this.UserToken : obj
Public ReadOnly Property UserToken As Object
Hodnota vlastnosti
Vrátí objekt, který obsahuje UserToken.
Příklady
Následující příklad ukazuje konzolovou aplikaci, která načte a uvolní objekty Grammar . Aplikace používá metodu RequestRecognizerUpdate k vyžádání modulu pro rozpoznávání řeči, aby se pozastavil, aby mohl obdržet aktualizaci. Metoda předá objekt String pro userToken parametr, který popisuje, co aplikace rozpozná po aktualizaci. Aplikace pak načte nebo uvolní Grammar objekt.
V každé aktualizaci obslužná rutina události SpeechRecognitionEngine.RecognizerUpdateReached zapíše obsah userToken do konzoly. Jak se načítají a odkládají gramatiky, aplikace nejprve rozpozná názvy farmových zvířat, pak názvy farmových zvířat a názvy ovoce, pak pouze názvy ovoce.
using System;
using System.Speech.Recognition;
using System.Collections.Generic;
using System.Threading;
namespace SampleRecognition
{
class Program
{
private static SpeechRecognitionEngine recognizer;
public static void Main(string[] args)
{
// Initialize an in-process speech recognition engine and configure its input.
using (recognizer = new SpeechRecognitionEngine(
new System.Globalization.CultureInfo("en-US")))
{
recognizer.SetInputToDefaultAudioDevice();
// Create the first grammar - Farm.
Choices animals = new Choices(new string[] { "cow", "pig", "goat" });
GrammarBuilder farm = new GrammarBuilder(animals);
Grammar farmAnimals = new Grammar(farm);
farmAnimals.Name = "Farm";
// Create the second grammar - Fruit.
Choices fruit = new Choices(new string[] { "apples", "peaches", "oranges" });
GrammarBuilder favorite = new GrammarBuilder(fruit);
Grammar favoriteFruit = new Grammar(favorite);
favoriteFruit.Name = "Fruit";
// Attach event handlers.
recognizer.SpeechRecognized +=
new EventHandler<SpeechRecognizedEventArgs>(recognizer_SpeechRecognized);
recognizer.RecognizerUpdateReached +=
new EventHandler<RecognizerUpdateReachedEventArgs>(recognizer_RecognizerUpdateReached);
recognizer.SpeechRecognitionRejected +=
new EventHandler<SpeechRecognitionRejectedEventArgs>(recognizer_SpeechRecognitionRejected);
// Load the farmAnimals grammar
recognizer.LoadGrammar(farmAnimals);
// Start continuous, asynchronous recognition.
recognizer.RecognizeAsync(RecognizeMode.Multiple);
Console.WriteLine("Starting asynchronous recognition...");
Console.WriteLine(" Farm animals will now be recognized.");
Thread.Sleep(7000);
Console.WriteLine();
// Load the Fruit grammar.
string activeGrammars = "Farm animals and fruits will now be recognized.";
recognizer.RequestRecognizerUpdate(activeGrammars);
recognizer.LoadGrammarAsync(favoriteFruit);
Console.WriteLine();
Thread.Sleep(7000);
Console.WriteLine();
// Unload the Farm grammar.
string onlyFruit = "Only fruits will now be recognized.";
recognizer.RequestRecognizerUpdate(onlyFruit);
recognizer.UnloadGrammar(farmAnimals);
Thread.Sleep(7000);
}
// Keep the console window open.
Console.WriteLine();
Console.WriteLine("Press any key to exit...");
Console.ReadKey();
}
// At the update, describe what the application will recognize next.
public static void recognizer_RecognizerUpdateReached(object sender, RecognizerUpdateReachedEventArgs e)
{
Console.WriteLine(" Update reached: " + e.UserToken);
}
// Write the text of the recognized phrase to the console.
static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{
Console.WriteLine(" Speech recognized: " + e.Result.Text);
}
// Write a message to the console when recognition fails.
static void recognizer_SpeechRecognitionRejected(object sender, SpeechRecognitionRejectedEventArgs e)
{
Console.WriteLine(" Recognition attempt failed");
}
}
}
Poznámky
Aplikace určuje UserToken , kdy požaduje generování RecognizerUpdateReached události voláním jedné z SpeechRecognitionEngine.RequestRecognizerUpdate metod nebo SpeechRecognizer.RequestRecognizerUpdate metod, které přebírají userToken parametr.