RecognizerUpdateReachedEventArgs.UserToken Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
UserToken
Bir uygulama veya RequestRecognizerUpdateçağırdığında RequestRecognizerUpdate sisteme geçirileni alır.
public:
property System::Object ^ UserToken { System::Object ^ get(); };
public object UserToken { get; }
member this.UserToken : obj
Public ReadOnly Property UserToken As Object
Özellik Değeri
öğesini içeren UserToken
bir nesne döndürür.
Örnekler
Aşağıdaki örnekte nesneleri yükleyen ve kaldıran bir konsol uygulaması gösterilmektedir Grammar . Uygulama, konuşma tanıma altyapısının RequestRecognizerUpdate bir güncelleştirme alabilmesi için duraklatma isteğinde bulunmak için yöntemini kullanır. yöntemi, güncelleştirmeden sonra uygulamanın neleri tanıyacağını açıklayan parametresi için userToken
bir String nesnesi geçirir. Uygulama daha sonra bir Grammar nesneyi yükler veya kaldırır.
Her güncelleştirmede, olay işleyicisi SpeechRecognitionEngine.RecognizerUpdateReacheduserToken
içeriğini konsoluna yazar. Dil bilgisi yüklendikçe ve kaldırıldıkçe, uygulama önce çiftlik hayvanlarının adlarını, ardından çiftlik hayvanlarının adlarını ve meyvelerin adlarını, ardından yalnızca meyvelerin adlarını tanır.
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");
}
}
}
Açıklamalar
Uygulama, UserToken
parametre alan veya SpeechRecognizer.RequestRecognizerUpdate yöntemlerinden birini çağırarak bir RecognizerUpdateReached
olayın oluşturulmasını SpeechRecognitionEngine.RequestRecognizerUpdate istediğinde belirtiruserToken
.