Sdílet prostřednictvím


Class SPXIntentRecognizer

Declaration

@class SPXIntentRecognizer : SPXRecognizer;

Description

Performs intent recognition on speech input. It returns both recognized text and recognized intent.

Methods

init:

Initializes a new instance of intent recognizer using the specified speech configuration.

- (instancetype _Nullable)init:(SPXSpeechConfiguration * _Nonnull)speechConfiguration

Parameters

  • speechConfiguration - speech recognition configuration.

Returns

an intent recognizer.

init:error:

Initializes a new instance of intent recognizer using the specified speech configuration.

Added in version 1.6.0.

- (instancetype _Nullable)init:(SPXSpeechConfiguration * _Nonnull)speechConfiguration
    error:(NSError * _Nullable * _Nullable)outError

Parameters

  • speechConfiguration - speech recognition configuration.
  • outError - error information.

Returns

an intent recognizer.

initWithSpeechConfiguration:audioConfiguration:

Initializes a new instance of an intent recognizer using the specified speech and audio configurations.

- (instancetype _Nullable)initWithSpeechConfiguration:(SPXSpeechConfiguration * _Nonnull)speechConfiguration
    audioConfiguration:(SPXAudioConfiguration * _Nonnull)audioConfiguration

Parameters

  • speechConfiguration - speech recognition configuration.
  • audioConfiguration - audio configuration.

Returns

an intent recognizer.

initWithSpeechConfiguration:audioConfiguration:error:

Initializes a new instance of an intent recognizer using the specified speech and audio configurations.

Added in version 1.6.0.

- (instancetype _Nullable)initWithSpeechConfiguration:(SPXSpeechConfiguration * _Nonnull)speechConfiguration
    audioConfiguration:(SPXAudioConfiguration * _Nonnull)audioConfiguration
    error:(NSError * _Nullable * _Nullable)outError

Parameters

  • speechConfiguration - speech recognition configuration.
  • audioConfiguration - audio configuration.
  • outError - error information.

Returns

an intent recognizer.

addIntentFromPhrase:

Adds a simple phrase that may be spoken by the user, indicating a specific user intent.

- (void)addIntentFromPhrase:(NSString * _Nonnull)simplePhrase

Parameters

  • simplePhrase - The phrase corresponding to the intent.

addIntentFromPhrase:mappingToId:

Adds a simple phrase that may be spoken by the user, indicating a specific user intent, and maps it to the provided identifier.

- (void)addIntentFromPhrase:(NSString * _Nonnull)simplePhrase
    mappingToId:(NSString * _Nonnull)intentId

Parameters

  • simplePhrase - The phrase corresponding to the intent.
  • intentId - A custom id string to be returned in the SPXIntentRecognitionResult's getIntentId() method.

addIntent:fromModel:

Adds a single intent by name from the specified Language Understanding Model.

- (void)addIntent:(NSString * _Nonnull)intentName
    fromModel:(SPXLanguageUnderstandingModel * _Nonnull)model

Parameters

  • intentName - The name of the single intent to be included from the language understanding model.
  • model - The language understanding model containing the intent.

addIntent:fromModel:mappingToId:

Adds a single intent by name from the specified Language Understanding Model, and maps the intent name to the provided identifier.

- (void)addIntent:(NSString * _Nonnull)intentName
    fromModel:(SPXLanguageUnderstandingModel * _Nonnull)model
    mappingToId:(NSString * _Nonnull)intentId

Parameters

  • intentName - The name of the single intent to be included from the language understanding model.
  • model - The language understanding model containing the intent.
  • intentId - A custom id string to be returned in the SPXIntentRecognitionResult's getIntentId() method.

addAllIntentsFromModel:

Adds all intents from the specified Language Understanding Model.

- (void)addAllIntentsFromModel:(SPXLanguageUnderstandingModel * _Nonnull)model

Parameters

  • model - The language understanding model containing the intents.

addAllIntentsFromModel:mappingToId:

Adds all intents from the specified Language Understanding Model, and maps them to the provided identifier.

- (void)addAllIntentsFromModel:(SPXLanguageUnderstandingModel * _Nonnull)model
    mappingToId:(NSString * _Nonnull)intentId

Parameters

  • model - The language understanding model containing the intents.
  • intentId - A custom id string to be returned in the SPXIntentRecognitionResult's getIntentId() method.

recognizeOnce

Starts intent recognition, and returns after a single utterance is recognized. The end of a single utterance is determined by listening for silence at the end or until a maximum of about 30 seconds of audio is processed. The task returns the recognition text as result.

Note: Since recognizeOnce() returns only a single utterance, it is suitable only for single shot recognition like command or query. For long-running multi-utterance recognition, use startContinuousRecognitionAsync() instead.

- (SPXIntentRecognitionResult * _Nonnull)recognizeOnce

Returns

the result of intent recognition.

recognizeOnce:

Starts intent recognition, and returns after a single utterance is recognized. The end of a single utterance is determined by listening for silence at the end or until a maximum of about 30 seconds of audio is processed. The task returns the recognition text as result.

Note: Since recognizeOnce() returns only a single utterance, it is suitable only for single shot recognition like command or query. For long-running multi-utterance recognition, use startContinuousRecognitionAsync() instead.

Added in version 1.6.0.

- (SPXIntentRecognitionResult * _Nullable)recognizeOnce:(NSError * _Nullable * _Nullable)outError

Parameters

  • outError - error information.

Returns

the result of intent recognition.

recognizeOnceAsync:

Starts speech recognition, and returns after a single utterance is recognized. The end of a single utterance is determined by listening for silence at the end or until a maximum of about 30 seconds of audio is processed. The task returns the recognition text as result.

Note: Since recognizeOnceAsync() returns only a single utterance, it is suitable only for single shot recognition like command or query. For long-running multi-utterance recognition, use startContinuousRecognitionAsync() instead.

- (void)recognizeOnceAsync:(void (^ _Nonnull)(SPXIntentRecognitionResult * _Nonnull))resultReceivedHandler

Parameters

  • resultReceivedHandler - the block function to be called when the first utterance has been recognized.

recognizeOnceAsync:error:

Starts speech recognition, and returns after a single utterance is recognized. The end of a single utterance is determined by listening for silence at the end or until a maximum of about 30 seconds of audio is processed. The task returns the recognition text as result. Note: Since recognizeOnceAsync() returns only a single utterance, it is suitable only for single shot recognition like command or query. For long-running multi-utterance recognition, use startContinuousRecognitionAsync() instead.

Added in version 1.6.0.

- (BOOL)recognizeOnceAsync:(void (^ _Nonnull)(SPXIntentRecognitionResult * _Nonnull))resultReceivedHandler
    error:(NSError * _Nullable * _Nullable)outError

Parameters

  • resultReceivedHandler - the block function to be called when the first utterance has been recognized.
  • outError - error information.

startContinuousRecognition

Starts speech recognition on a continuous audio stream, until stopContinuousRecognition() is called. User must subscribe to events to receive recognition results.

- (void)startContinuousRecognition

startContinuousRecognition:

Starts speech recognition on a continuous audio stream, until stopContinuousRecognition() is called. User must subscribe to events to receive recognition results.

Added in version 1.6.0.

- (BOOL)startContinuousRecognition:(NSError * _Nullable * _Nullable)outError

Parameters

  • outError - error information.

stopContinuousRecognition

Stops continuous intent recognition.

- (void)stopContinuousRecognition

stopContinuousRecognition:

Stops continuous intent recognition.

Added in version 1.6.0.

- (BOOL)stopContinuousRecognition:(NSError * _Nullable * _Nullable)outError

Parameters

  • outError - error information.

startKeywordRecognition:error:

Begins a speech-to-text interaction with this recognizer using a keyword. This interaction will use the provided keyword model to listen for a keyword indefinitely, during which audio is not sent to the speech service and all processing is performed locally. When a keyword is recognized, IntentRecognizer will automatically connect to the speech service and begin sending audio data from just before the keyword. When received, speech-to-text results may be processed by the provided result handler or retrieved via a subscription to the recognized event.

- (BOOL)startKeywordRecognition:(SPXKeywordRecognitionModel * _Nonnull)keywordModel
    error:(NSError * _Nullable * _Nullable)outError

Parameters

  • keywordModel - the keyword recognition model.
  • outError - error information.

Returns

a value indicating whether the requested keyword recognition successfully started. If NO, outError may contain additional information.

startKeywordRecognition:

Begins a speech-to-text interaction with this recognizer using a keyword. This interaction will use the provided keyword model to listen for a keyword indefinitely, during which audio is not sent to the speech service and all processing is performed locally. When a keyword is recognized, IntentRecognizer will automatically connect to the speech service and begin sending audio data from just before the keyword. When received, speech-to-text results may be processed by the provided result handler or retrieved via a subscription to the recognized event.

- (void)startKeywordRecognition:(SPXKeywordRecognitionModel * _Nonnull)keywordModel

Parameters

  • keywordModel - the keyword recognition model.

startKeywordRecognitionAsync:completionHandler:error:

Asynchronously begins a speech-to-text interaction with this recognizer and immediately returns execution to the calling thread. This interaction will use the provided keyword model to listen for a keyword indefinitely, during which audio is not sent to the speech service and all processing is performed locally. When a keyword is recognized, IntentRecognizer will automatically connect to the speech service and begin sending audio data from just before the keyword. When received, speech-to-text results may be processed by the provided result handler or retrieved via a subscription to the recognized event.

- (BOOL)startKeywordRecognitionAsync:(SPXKeywordRecognitionModel * _Nonnull)keywordModel
    completionHandler:(SPXIntentRecognitionAsyncCompletionHandler _Nonnull)completionHandler
    error:(NSError * _Nullable * _Nullable)outError

Parameters

  • keywordModel - the keyword recognition model.
  • completionHandler - the handler function called when keyword recognition has started.
  • outError - error information.

Returns

a value indicating whether the request to start keyword recognition was received successfully. If NO, additional information may available in outError.

startKeywordRecognitionAsync:completionHandler:

Asynchronously begins a speech-to-text interaction with this recognizer and immediately returns execution to the calling thread. This interaction will use the provided keyword model to listen for a keyword indefinitely, during which audio is not sent to the speech service and all processing is performed locally. When a keyword is recognized, IntentRecognizer will automatically connect to the speech service and begin sending audio data from just before the keyword. When received, speech-to-text results may be processed by the provided result handler or retrieved via a subscription to the recognized event.

- (void)startKeywordRecognitionAsync:(SPXKeywordRecognitionModel * _Nonnull)keywordModel
    completionHandler:(SPXIntentRecognitionAsyncCompletionHandler _Nonnull)completionHandler

Parameters

  • keywordModel - the keyword recognition model.
  • completionHandler - the handler function called when keyword recognition has started.

stopKeywordRecognition:

Stops any active keyword recognition.

- (BOOL)stopKeywordRecognition:(NSError * _Nullable * _Nullable)outError

Parameters

  • outError - error information.

Returns

a value indicating whether keyword recognition was stopped successfully. If NO, additional information may be available in outError.

stopKeywordRecognition

Stops any active keyword recognition.

- (void)stopKeywordRecognition

stopKeywordRecognitionAsync:error:

Stops any active keyword recognition.

- (BOOL)stopKeywordRecognitionAsync:(SPXIntentRecognitionAsyncCompletionHandler _Nonnull)completionHandler
    error:(NSError * _Nullable * _Nullable)outError

Parameters

  • completionHandler - the handler function called when keyword recognition has stopped.
  • outError - error information.

Returns

a value indicating whether the request to stop was received successfully. If NO, additional error information may be available in outError.

stopKeywordRecognitionAsync:

Stops any active keyword recognition.

- (void)stopKeywordRecognitionAsync:(SPXIntentRecognitionAsyncCompletionHandler _Nonnull)completionHandler

Parameters

  • completionHandler - the handler function called when keyword recognition has stopped.

addRecognizedEventHandler:

Subscribes to the Recognized event which indicates that a final result has been recognized.

- (void)addRecognizedEventHandler:(SPXIntentRecognitionEventHandler _Nonnull)eventHandler

addRecognizingEventHandler:

Subscribes to the Recognizing event which indicates that an intermediate result has been recognized.

- (void)addRecognizingEventHandler:(SPXIntentRecognitionEventHandler _Nonnull)eventHandler

addCanceledEventHandler:

Subscribes to the Canceled event which indicates that an error occurred during recognition.

- (void)addCanceledEventHandler:(SPXIntentRecognitionCanceledEventHandler _Nonnull)eventHandler

Properties

authorizationToken

@property (readwrite, copy, nonatomic) NSString * _Nullable authorizationToken;

The authorization token used to communicate with the intent recognition service. Note: The caller needs to ensure that the authorization token is valid. Before the authorization token expires, the caller needs to refresh it by calling this setter with a new valid token. Otherwise, the recognizer will encounter errors during recognition.