<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://jarvis.ai-dot.net/documentation/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=115.99.239.133</id>
	<title>LINKS - Documentation - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="http://jarvis.ai-dot.net/documentation/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=115.99.239.133"/>
	<link rel="alternate" type="text/html" href="http://jarvis.ai-dot.net/documentation/index.php/Special:Contributions/115.99.239.133"/>
	<updated>2026-05-16T04:26:31Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.11</generator>
	<entry>
		<id>http://jarvis.ai-dot.net/documentation/index.php?title=FAQ&amp;diff=571</id>
		<title>FAQ</title>
		<link rel="alternate" type="text/html" href="http://jarvis.ai-dot.net/documentation/index.php?title=FAQ&amp;diff=571"/>
		<updated>2016-05-22T14:53:03Z</updated>

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