Bagikan melalui


RecognizerUpdateReachedEventArgs.UserToken Properti

Definisi

Mendapatkan yang diteruskan UserToken ke sistem ketika aplikasi memanggil RequestRecognizerUpdate atau RequestRecognizerUpdate.

public:
 property System::Object ^ UserToken { System::Object ^ get(); };
public object UserToken { get; }
member this.UserToken : obj
Public ReadOnly Property UserToken As Object

Nilai Properti

Mengembalikan objek yang berisi UserToken.

Contoh

Contoh berikut menunjukkan aplikasi konsol yang memuat dan membongkar Grammar objek. Aplikasi menggunakan RequestRecognizerUpdate metode untuk meminta mesin pengenalan ucapan dijeda sehingga dapat menerima pembaruan. Metode meneruskan String objek untuk userToken parameter yang menjelaskan apa yang akan dikenali aplikasi setelah pembaruan. Aplikasi kemudian memuat atau membongkar Grammar objek.

Pada setiap pembaruan, handler untuk SpeechRecognitionEngine.RecognizerUpdateReached peristiwa menulis konten ke konsol userToken . Ketika tata bahasa dimuat dan dibongkar, aplikasi pertama-tama mengenali nama hewan ternak, kemudian nama-nama hewan ternak dan nama buah-buahan, kemudian hanya nama buah-buahan.

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");  
    }  
  }  
}  

Keterangan

Aplikasi menentukan UserToken kapan aplikasi meminta pembuatan RecognizerUpdateReached peristiwa dengan memanggil salah SpeechRecognitionEngine.RequestRecognizerUpdate satu metode atau SpeechRecognizer.RequestRecognizerUpdate yang mengambil userToken parameter.

Berlaku untuk

Lihat juga