FAQ
Jump to navigation
Jump to search
Issue loading data grid?
Follow these links then reinstall:
How do I check what mode/state LINKS is in?
LINKS has 3 modes/states. We can look at the system tray icon to see the current status.
- Normal Mode: Listening for all commands; Cyan icon.
- Soft Stop Listening Mode: Only listening for "Start Listening" and "Stop Talking" command; Gray/Cyan icon.
- Hard Stop Listening Mode: Listening to nothing; Gray/Red icon.
What is a Function?
- Functions allows users to use special features that do not require the user to be a programmer.
- Functions can be used inside the commands or externally from LINKS web service.
- All functions are enclosed inside square brackets
[FunctionName]. - Functions can contain placeholders for arguments
[FunctionName("Argument1","Argument2","Argument...")] - Function can only be used in Response and Action columns.
- Most functions return a string on successful execution.
- In another words if we have a function to add numbers i.e.
[Add("1","2")], the result will be 3.
- In another words if we have a function to add numbers i.e.
Can I make my own function?
- Yes, it's possible to make your own functions.
- To do that, we have to create a dll and place it in the %APPDATA%\LINKS\Customization\Plugins folder.
- Can only access static string function from a dll.
- Can only pass arguments as string to the functions.
- To access a function from a dll, we have to specify the namespace, class, and function name.
- For Example:
[Namespace.Class.FuntionName("Argument1","Argument2","Argument...")]
- For more information, see the sample *.cs files provided in the Plugins folder.
What is the Web Service?
- Web service allows you to talk back and forth with LINKS remotely or locally.
- For Example:
- Making custom scripts and talk through LINKS that allows you to use stop talking.
- Get/Set status or data via web. Request to execute a command remotely via web.
- Extremely helpful in Home Automation.
- etc...
- Example URL:
http://localhost:54657/?action=action=[Speak("Hello World")]&key=1234ABC
- Speaks "Hello World" from LINKS using a web request.
How do I reset LINKS files for reinstall?
- Uninstall LINKS
- Press Windows Key + r
- type %APPDATA%\..\Local\Apps
- Rename or delete 2.0 folder
- Follow "How do I delete all LINKS data?"
- Install LINKS
How do I delete all LINKS data?
- Press Windows Key + r
- Type %APPDATA%
- Enter
- Look for LINKS folder and delete it (or rename it if you like to keep a backup.)
- Then follow "How do I reset LINKS files for reinstall?"
What is the difference between hard and soft listening mode?
- Hard Listening Mode
- Hard listening mode is enabled or disabled by using the orange button.
- It allows you, the user, to make LINKS stop listening to all commands.
- Stop Listening Mode
- Stop listening mode can be enabled by voice, by saying the "Stop listening" command.
- It makes LINKS to stop listening to all command except the "Start listening" default commands.
Note: "Start listening" command can be modified or added in default commands tab under customize window.
How do I make listen to LINKS variable speech?
- You can use Cortana plugin or Windows Speech Recognition to interact with your scripts or other plugins.
- For example, if you have a script that takes 1 argument called “Search.vbs”, add command in shell as follows:
- Command:
Links, answer this. - Response:
(leave this blank) - Action:
Search "[Cortana.LDictation.GetDictation("Ask away sir?","show_ui")]"
- Command:
- Another action example would be like this:
- Action:
[LINKS.WebSearch.bingQuery("[Cortana.LDictation.GetDictation("What For Sir?","show_ui")]","sorry, I can not locate that")] - This sends text received from Cortana to another plugin.
- Action:
Be sure to use exact syntax to make it work. Do not forget the quotes.
Can I use Cortana on windows 7 or 8.1?
- No, it’s only compatible with windows 10.
Is Cortana always listening?
- No, it only listens when you call a Cortana command.
How do I wake-up windows default Cortana?
- In keyboard section, add a command as follows:
- Command:
wake up Cortana - Response:
sure - Macro:
{WIN_DOWN}C{WIN_UP}
- Command:
How do I issue a shutdown command to safely close LINKS and save my Databases?
- Call shutdown command, as you specify in default commands.
- Default command is “Goodbye”
- To confirm the shutdown command say "Affirmative" or "Yes {AIName}"
Note: Where AIName is what's specified under settings i.e. "JARVIS"
How do I make LINKS say random responses?
- Just separate the phrases with semicolon.
- For example:
- Response:
goodbye sir;initiating shutdown protocols sir;farewell sir;until next time sir
- Response:
Mic problem or LINKS listening to unspoken commands?
- Close LINKS
- Monitor your mic level by opening your microphone level settings from sounds under control panel or the sound tray icon.
- Open microphone setup wizard:
- Press Windows Key + r, type the following:
- %WINDIR%\System32\speech\speechux\SpeechUXWiz.exe MicTraining
- Press Enter
- Go next in wizard.
- Watch the mic level, while yelling or tapping into microphone. Note: You don’t have to read the displayed text.
- Make the level go about 50% or as low as desired.
- Test LINKS with couple different volume levels with trial and error. You can go as low as 1% mic level under certain conditions.
- Press Windows Key + r, type the following:
Should you wish to see additional data relative to the mic problem, please visit this link: [1]
How do I add comments in my commands
- In the beginning of the command add <!--Comment-->.
- Example:
- Command:
<!--This is a word list command-->Say hello to {f=friendList} - Response:
hello {f}
- Command:
Note: This is only available for dynamic commands in v2.6.1.10
How do I un-train LINKS's speech recognition
- You can use windows "Advanced Speech Options" to create a new speech profile.
- Open the Control Panel, All Control Panel Items, where it shows the list for you to adjust your computer’s settings.
- Click on Speech Recognition
- Under Control Panel Home/Pane (left side of screen), click on Advanced Speech Options
- In the second tab, Recognition Profiles, click on New.
- It will bring you to” Add a profile” window.
- Following the example, assign a new profile name, and press enter.
- This will bring you to the microphone setup wizard.
- Choose the mic for your system, then follow all instructions accordingly.
How do I play a custom sound using voice command?
- Copy your sound file in "%appdata%\LINKS\Customization\Sound Effects\" and by calling [PlaySound("FileName")] function.
- Example:
- For this example, the wav file name is “Glados_Hello.wav”
- Note: It only supports .wav files
- In social tab, add this command:
- Command:
hey glados - Response:
[PlaySound("Glados_Hello")
- Command:
How do I add a command that will ask for confirmation before executing?
- In shell tab, add a command as follows:
- Command:
Shutdown my computer - Response:
Are you sure you want to shutdown the computer?|Shutting system down - Action:
-conShutdown -s -t 10
- Command:
How do make a pause between keyboard command?
- We can use
{WAIT:millisecond}to wait between typing a letter. - For Example, in keyboard section, add command as follows:
- Command:
Type h then wait 1 second and then type ello - Response:
sure - Macro:
H{WAIT:1000}ello - Note: This type h then wait 1 second then type ello.
- Command:
- Some more commands:
{WIN_UP}{WIN_DOWN}
- It's not ready yet, we have to wait till LINKS says "Online and ready"
Why is LINKS not listening to me after x amount of time
- Enable Auto Reset from settings window. And change auto reset settings to x amount of minutes.
- You can also press the orange button off and on to bring it back online.
- Another reason could be that you turned on Auto Sleep on, you have to call "start listening" command to wake it up.
How do I reset the database to its default?
- Close LINKS
- Press Windows + r key
- Type %APPDATA%\LINKS\Data\
- Enter
- Delete these files if they exist:
- _Grammar_v1.mdf
- _Grammar_v1_log.ldf
- Restart LINKS
How do I revert to an older backup?
- Follow database reset process, minus restarting LINKS.
- Then go to %APPDATA%\LINKS\Data\Backups\ folder
- Copy any of the backup database from there.
- Paste it in %APPDATA%\LINKS\Data\' folder and rename it to _Grammar_v1.mdf
- Start LINKS
What is Auto Sleep in speech recognition setting?
- Enabling Auto Sleep makes LINKS go to soft stop listening mode.
- You can then bring him back by calling any of the "start listening" default commands.
Note: After LINKS accepts each command the time resets back to x seconds so you can call more commands.
What is Auto Reset?
- Enabling Auto Reset makes LINKS reset the recognition after x amount of time. Some users require this automatic action when they use LINKS for an extended period of time because LINKS tends to stop listening.
What is Push To Talk?
- Allows user to use right control key to enable recognition.
- User can hold the key as long as they want to speak the command.
- When user releases the key LINKS will go into hard stop listening mode.
Can I edit the function column in default commands under customize window?
- It is a best practice not to alter the functions column of the default commands tab.
- However, it is acceptable to remove full command rows or add additional command rows with alternate key phrases that call the same default action.
- For example:
- Command: <command>stop Listening</command>
- Function: <command>stop listening</command>
- Can be duplicated as:
- Command: <command>I'm on the phone LINKS.</command>
- function: <command>stop listening</command>
- Can be duplicated as:
How do I create variable\dynamic commands (WordList)?
- See the example below:
- Create a text file, with 2 or more tab delimited columns with any headers as follows:
Grammar Value Size milk Milk 1 Gallon bread Some brand bread Family detergent Some brand pods detergent 40+
- Save the text file as %AppData%\LINKS\Data\WordList\thing to buy.txt
- Remember: Header should always be defined. The first line is not used to build the grammar.
- Make a command in shell as follows:
- Command:
add {thing=thing to buy} to the shopping list - Response:
are you sure you want to add {{thing}} to the shopping list?|{{thing}} added to the shopping list - Action:
-conCMD /m /c "echo {{thing}} >> %temp%\ShoppingList.txt"
- Command:
- So, how can I get the Size column?
- By using
[GetWord("WordList","Grammar","ColumnName")]function. We are going to use it with[Get("Variable")] and [Set("Variable","Value")]in this example.
- By using
- Example:
- Make a command in social as follows:
- Command:
What size of {thing=thing to buy} should I get?[Set("LastRequestedThing","{thing}")] - Response:
[GetWord("thing to buy","[Get("LastRequestedThing")]","Size")]
- Example:
Can I set/get variables in commands?
- Yes, by using
[Get("Variable"]and[Set("Variable","Value")]functions. - Make 2 commands:
- Command[1]:
hey {ai=ainame} - Response[1]:
[SetSpeechVoice("{{ai}}")]Hello [get_SirOrMadam] - [Set("AIName","{ai}")][Set("AIValue","{{ai}}")] - Note: this command will change the voice to specified voice from WordList
- Command[1]:
- Command[2]:
what is your voice set to? - Response[2]:
My name is [Get("AIName")], and my voice is set to [Get("AIValue")] - Note: this command will repeat the AIName and AIValue you set in previous command.
- Command[2]:
ainame.txt Name Voice Name Jarvis IVONA Brian LINKS Microsoft David Desktop Elizabeth Elizabeth
Can I set a delayed command ?
- Yes, by using [SetTask("Date time to delay till","Phrase to speak before execution","Speech Volume","Emulate-able Command")] function that would call the delay command.
- Make 2 shell commands:
- Command[1]:
00000001_DelayedCommand(Can be anything that should not get recognized) - Response[1]:
opening notepad - Action[1]:
notepad - Command[2]:
test delayed command - Response[2]:
Sure, will open notepad in 10 seconds - Action[2]:
-fun[SetTask("[DateAdd("","sec", "10")]","about to execute notepad","100","00000001_DelayedCommand")] - Note: In this example, Command[2] will call Command[1] after 10 seconds.
- To figure out what date format has to be used, use [DateAdd("","sec", "10")] to output to a batch file or run from web service.
- Command[1]:
How to manage the exported database/list of commands?
- When trying to import a list of commands be sure to remove any id column that might be in the file.
- Make sure the file is a tab delimited .txt format.
How should I use command line apps?
- You can now run console apps in LINKS of any format from shell commands.
- Java, VBS, batch and any other console based app are compatible.
- LINKS will execute the command line app and read the output of the app.
- Example:
- Java:
- Command:
run my java command - Response:
{{!Action!}} - Action:
-ret"java" -cp "%AppData%\LINKS\Customization\Scripts\;" test_java - Note: Make sure to compile the class first before execution the java command. i.e, javac test_java.java
- Command:
- VBS:
- Command:
run my vbs command - Response:
{{!Action!}} - Action:
-ret"CScript" VBS_Test.vbs
- Command:
- Batch:
- Command:
run my batch command - Response:
{{!Action!}} - Action:
-retBatch_Test.bat
- Command:
Why am I getting Global Assembly Cache (GAC) error while running the setup?
- That error usually occurs on windows 7.
- Make sure you have SP1 installed prior to running the setup.