ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Help / WLanguage / WLanguage functions / Standard functions / Windows functions / Speech Recognition functions
  • Phonetic recognition
  • Special cases
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Others
Stored procedures
Adds a voice command into the current window. The command is automatically disabled when closing the window. This voice command can be deleted by SpeechRecognitionDeleteCommand.
Remarks:
  • WINDEVReports and QueriesWindowsUser code (UMC) A speech recognition program must be installed on the runtime computer. A speech recognition program is supplied with Windows Vista. For the other systems, "Dragon Naturally Speaking" must be installed (tests run with version 9 "Preferred" or "standard").
  • AndroidiPhone/iPad The service for speech recognition must be installed on the phone. The recognition of the voice commands must be triggered by SpeechRecognitionTrigger.
Example
// Start the "Proc_Anim_Window" procedure if the voice command is recognized
Voice1ID is int
Voice1ID = SpeechRecognitionAddCommand("Proc_Anim_Window", "Animate the window")
// Start the "Find" procedure if the voice command is recognized
VoiceID is int = SpeechRecognitionAddCommand("Find", "Finds the form of")
Voice2ID is int = SpeechRecognitionAddCommand("Find", "Displays the form of")
Voice3ID is int = SpeechRecognitionAddCommand("Find", "Seeks the form of")
PROCEDURE Find(Param1)
sCustomer is string = Param1[[21 TO ]]
HReadSeekFirst(sCustomer, LastName_FirstName, sCustomer)
Syntax
<Result> = SpeechRecognitionAddCommand(<WLanguage procedure> , <Sentence to recognize>)
<Result>: Integer
Identifier of the voice command.
<WLanguage procedure>: Procedure name
Name of the procedure that will be run when the voice command is heard. This procedure has the following format:
PROCEDURE <Procedure name>(<Parameter name>)
<Parameter name> is a character string parameter. At runtime, <Parameter name> corresponds to the sentence that is recognized.
<Sentence to recognize>: Character string
Sentence used to trigger the execution of the procedure. If this parameter corresponds to an empty string (""), the specified procedure will be run for each sentence spoken.
Remarks

Phonetic recognition

If <Sentence to recognize> corresponds to an empty string (""), the procedure will be run for each sentence pronounced. This enables you to process the sentenced spoken in the procedure in order to recognize the voice command that was used.
You can for example store in an array (associative array for example) all the available voice commands (phonetically) and the procedure associated with each one of these commands.
To do so, pass each word of the sentence phonetically and compare the sentence with the array of voice commands. If the command is recognized, the associated procedure can be run.
To improve the understanding, you also have the ability to delete the unnecessary words found at the beginning and at the end of sentence.

Special cases

  • WINDEVReports and QueriesWindowsiPhone/iPadUser code (UMC) SpeechRecognitionAddCommand must be used in the initialization code of the window or control. This function is not recognized if it is used in the project initialization code.
  • AndroidAndroid Widget SpeechRecognitionAddCommand can be used from any process of a window (or window controls).
  • iPhone/iPad This function can be used from iOS 10.
Related Examples:
Android Speech Synthesis Android (WINDEV Mobile): Android Speech Synthesis
[ + ] This educational example explains how to manage the recognition and the speech synthesis Android.
The speech synthesis is performed by using either the WLanguage functions, or an external JAR file included in the WINDEV Mobile project.
Component: wd290obj.dll
Minimum version required
  • Version 17
This page is also available for…
Comments
Click [Add] to post a comment

Last update: 06/23/2023

Send a report | Local help