RecognizerUpdateReachedEventArgs.UserToken Proprietà
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.
Ottiene il UserToken
passato al sistema quando un'applicazione chiama RequestRecognizerUpdate o RequestRecognizerUpdate.
public:
property System::Object ^ UserToken { System::Object ^ get(); };
public object UserToken { get; }
member this.UserToken : obj
Public ReadOnly Property UserToken As Object
Valore della proprietà
Restituisce un oggetto contenente l'oggetto UserToken
.
Esempio
Nell'esempio seguente viene illustrata un'applicazione console che carica e scarica Grammar oggetti. L'applicazione usa il RequestRecognizerUpdate metodo per richiedere al motore di riconoscimento vocale di sospendere in modo che possa ricevere un aggiornamento. Il metodo passa in un String oggetto per il userToken
parametro che descrive cosa riconoscerà l'applicazione dopo l'aggiornamento. L'applicazione carica o scarica un Grammar oggetto.
In ogni aggiornamento, un gestore per SpeechRecognitionEngine.RecognizerUpdateReached l'evento scrive il contenuto della userToken
console. Quando le grammatica vengono caricate e scaricate, l'applicazione riconosce prima i nomi degli animali della fattoria, quindi i nomi degli animali della fattoria e i nomi dei frutti, quindi solo i nomi dei frutti.
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");
}
}
}
Commenti
Un'applicazione specifica un UserToken
oggetto quando richiede la generazione di un RecognizerUpdateReached
evento chiamando uno dei SpeechRecognitionEngine.RequestRecognizerUpdate metodi o SpeechRecognizer.RequestRecognizerUpdate che accettano un userToken
parametro.