Post by Admin on Jun 1, 2015 18:08:41 GMT
See Attachment
Keywords
The Keyword field is used to associate a Keyword to a Cell Word. When the Cell Word is found in the input then the Keyword function is triggered.
To stop a cell word being used in the output then set the Type field to 40.
If a cell with a keyword is activated then the keyword is only used if there is a keyword tag in the tags field.
AiOn turns on Ai output.
AiOff turns off Ai output NOTE this only turns off the Ai's response it doesn't switch off functions.
AiWindowHide hides the Ai so its only viable as a process
AiWindowShow restores the Ai window NOTE if you have no communication with the hidden Ai then you wont be able to access it. The only way to close it is to end the process in Task Manager. There is no problem closing the program this way so don't worry about any warnings you may receive.
Alarm field 7 = alarm time, format: HH:MM
The cell is activated if the time is found. Cell 940 in cell fields hold the cell numbers of cells with an Alarm Keyword only 9 alarms can be set. This is done like this to cut down on processor usage. Cell 940 is updated when the SaveBrain process is activated or when update is pressed.
AllowRepeat allows an answer to be repeated, works the same as f3 TF = 25, this gives another way of repeating the output
AlwaysAnswerOn activates Auto Ai on bad RQ default is off.
AlwaysAnswerOff turns off Auto Ai on bad RQ.
AnalogueInputToInput puts the USB analogue input into the Ai input.
AnalogueInputToOutput puts the USB analogue input into the Ai output.
AOutNNEOn the input code of cell 1603 and 1604 is used to control the analog output value a1 and a2 on the k8055 card
AOutNNEOff turns off Brain to analog outs
AutoInputOn turns on automatic input, grabs text after you've finished typing.
AutoInputOff turns off automatic input so you have to press OK or ENTER to put text into the input.
AutoIt autoit.exe must be in the path and .aut associated to it, then field 8 is the autoit script to run, field 7 is the reply if script is found. This performs a system command on field 8 and looks in the scripts folder for the AutoIt script to run.
AutoLearn this keyword uses the DownloadFile and ExtractWords processes when a bad word is found see cell 931 for details on how this works. Here are settings for Wikipedia.
field contents
tags <keyword-ifa>
mode 4
operation 10
keyword AutoLearn
field 8 en.wikipedia.org/wiki/Special:Search?search=
Beep file field is the frequency field 10 is the duration, processing stops whilst the sound is produced.
BrightSpot counts the number of bright spots on the image sends the answer to output, start of the find brightest area in a room when viewing with a web cam.
BrightSpotCompair compares the number of brightspot's with the number generated by a BrighSpot keyword if there are more bright spots then field 10 is put
into the input if there are less brightspot's then field 11 is put into the input.
The input code of the cell is changed to the results of the function
000001111 means there are exactly the same number of bright spots
000000011 means there are less bright spots
000001100 means there are more
BulkWrite writes cell data to a text file. Like pressing New Data button but this keyword bulk writes the data from cell number in field 7 to the cell number in field 10. The file field holds the name of the file to write to. A new file is created and the data added to it but if the filename is NewBrainData.txt which is the file used by the New Data button then the cell data is added to the file without creating a new file.
ChangeToGetStartPath converts address in the BD to <getstartpath> only address that contain the start path will be converted.
ChangeGetStartPath converts <getstartpath> found in the BD to the proper address.
CheckFix activates the CheckAndFix routine that normally runs when the Ai builds a BD when no existing BD is present in the data folder. If run as a keyword only system cells not set will be updated. The cells updated are:
809 f9 to o-o
810 set to spud ai web site
815 set f7,f8,f10,f11
818 f8,f10
819 STF
822 RQ defaults
841 SJ Subject
860 Emotion
861 SJN Subject New
910 SEN
920 6p
922 LM
923 LM
924 NNE exclude
931 LM web add
932 LM RAS
2000
2001 set to "is" for QI
2002 set to "what" for QI
2003 set to "indexfiles"
2004 UpdateBrain Keyword
indexfiles is activated to give RAS and PAR something to work with
CleanNode resets a in cell field to 0. Sometimes words start to appear that aren't wanted this is sometimes caused by repeat references to words CleanNode is a way of removing these words by removing the connections to them.
ClearAllDigital clears all digital channels.
ClearDigital1to4 this clears digital channels 1 to 4 at the end of the processing cycle this enables faster switching. If cleardigital1to4 is in Keyword field of the word that turns the channel on then it will stay on for a shorter time.
ClearDigital5to7 clears digital channels 5 to 7.
ClearDigital1to4Immediatley clears channels immediately as soon as this key word is found.
ClearDigital5to7Immediatley clears channels immediately as soon as this key word is found.
ClearInputs clears all input buffers including all PutInInput variables.
ClearToPrint clears the ToPrint variable which is used to hold the output.
ClearPutInInput clears PutInInput variables.
ClearTagOnce clears the tag once variable
CloseWindow close the window name in field 9.
ConnectToInternet uses the InternetAttemptConnect command in wininet.dll.
CreateHTML uses the new create html routine. File is the source file, field 10 is the output file. This works in the same way as cell 831 but uses the information in the cell instead of cell 831. The tags are placed in the source file and are acted upon when read by the program.
<aioutput> this tag is changed for the output from the Ai
<cell:1234> activates the brain cell number following cell: the tag is replaced with the output from the cell.
These tags can be inserted in other text which isn't changed. Best practice is to use only one tag in a line.
DebugMini sends the scroll output to the debugger only.
DebugOff turns off outputs to debugger.
DebugOn turns on outputs to debugger you need to have a debugger program running. Information sent to the debug program is more detailed and includes many messages that don't appear any ware else.
DInActivateOn activates cells 1155 or 1154 or 1176 when K8055 digital channels 1,2,3,4 or 5 are activated. Input code of 1176 is altered according to the digital ins rightmost node =d5 next in =d4 and next=d3.
DInActivateOff de-activates cell 1176 activation on digital in.
DisconnectFromInternet disconnects internet connection.
DoesConnectionExist does internet connection exist if yes field 10 if no field 11 if Operation or Type fields are 68 then the output is put into the input.
DoesFileExist checks to see if the filename in file field exits, if yes read response infield 7 if no read response in field 8.
DoesWindowExist if the window name in file field exists then field 10 is used for the output, if not then field 11 is used. If Operation or Type field is set to 68 then the output is sent to the input.
DOutNNEOn allows the input nodes 1 to 8 of cell 1504 to activate digital outputs 1 to 8.
DOutNNEOff turns off Brain to digital outs.
DownloadFile The external program dlf.exe is used to download the file from the server name in field 10 to the file in the file field. Using downloadfile allows the Ai to continue processing if you want processing to stop whilst the download is happening then use the keyword DownLoadFileWait. The file dlf_output.txt holds the results of the download.
DownloadFileWait field 10 is the full web address of the file to down load. The program waits for the download to finnish before continuing processing. Field 7 is the cell to activate when the download completes.
dlf_output.txt is deleted before the download starts.
The process causes the Ai to freeze during the download which is useful if the AI then acts on the downloaded file but if you want the AI to continue processing use the DownloadFile instead. This keyword uses the external program dlf.exe to download the file.
DTLearn uses a keyword to trigger the DT learning routine. The keyword is removed from the input then the input is put into the output box and the DT learning routine is activated. The Ai continues to process the input after the DT learning routine has finished. This is used so you can update using DT from the input box rather than typing directly into the output box useful when training the Ai remotely through a web page or other input. If there is an entry if field 7 then this is removed from the input as apposed to Cell Word, this is useful when activating using say a pattern code.
If "is the sentence code for" was in the previous output then field 8 of the sentence code or pattern is changed instead.
EventActivate activates the cell if an event occurs.
ExpectedInInput this tells the Ai to look for the words in field 8 or file field in the next input see word in input expected paragraph for more details.
ExtractWords extracts the words and numbers from a document holding tags or scripts like a web page. It works as a simple parser for web pages so the document can be used as source material by the Ai. A lot of web pages these days are made up of scripts and objects that source data directly from databases, these type of pages have very little real text so the process sometimes produces a blank page. Words are extracted from the file name in the file field. The new file is the same name but with x added to the extension.
If the Operation field is set higher than 0 then the extracted file is scanned and the number of lines down as specified by the Operation field is sent to the output. ExtractWords also sets up the variable used by the KnownWordsTwo keyword.
f7Activatef10Millisec activates the cell number in field 7 in field 10 milliseconds.
f8Activatef10Millisec activates the cell number in field 8 in field 10 milliseconds.
f8ToInputf10Millisec starts the timer to the value in field 10, in millisecond then puts contents of field 8 into input when the timer is up.
Face goes directly to face drawing routine using the cell number that activated the keyword. The output code is used to move the eyes and mouth. Each node operates an element of the face.
As your looking at the face the eyes pupil are moved to the position using the output code in the following way
node 1 pupils to bottom right
node 2 bottom middle
node 3 bottom left
node 4 middle right
node 5 middle middle looking straight at you
node 6 middle left
node 7 top right
node 8 top middle
node 9 top left
the mouth is made up of 4 elements which are either up or down
node 1 left top line left 0=down 1=up
node 2 left top line right 0=down 1=up
node 3 right top line left 0=down 1=up only if left top line right is in same place, stops the mouth looking weard
node 4 right top line right 0=down 1=up
node 5 left bottom line left 0=up 1=down
node 6 left bottom line right 0=up 1=down follows node 7
node 7 right bottom line left 0=up 1=down follows node 6
node 8 right bottom line right 0=up 1=down
The expressions and the associated code might be used as the emotion variable which is a new idea to give more information on words.
FaceOn turns on face drawing in image window.
FaceOff turns off face drawing.
FastScript turns off the main Ai timer and reads the script file name in file field into the Ai if file field is empty then the file name in field 8 is used. It is assumed that the script is in the scripts folder this is for compatibility with older Ai databases. Normal processing continues after the script has been read. If timer: followed by a number is in the script then the value is the time between each read of the line the default setting is 500ms.
FileToInput reads the file in the file field into the input sentence by sentence every timer loop. The document should be a text doc with a return less than every 256 characters
other wise the string variable will cause a GFP. If a GPF is caused paste the document into notepad, turn off world wrap and press return at the end of the
line. The Mode field of entry 832 is the mode used to translate the input, the same as Auto Ai. If the file field is empty then field 10, if not empty, is used. Field 10 is added to the Ai startpath so you can read a file to the input if its in the same folder as the main Ai program. This is used so the keyword still works if the Ai is on a different drive.
FileToOutput this is exactly the same as FileToInput but it sends the data to the output buffer.
HostToIP field 10 is the host name to find the IP number of, field 8 is the IP number found. This function uses some of the UDP processes so Enable UDP needs to be ticked in settings. To Enable HostToIP but disable UDP un-tick RX and TX.
if8or9do10or11 if the word in field 8 is in the next input do field 10. Ff the word in field 9 is in the next input do field 11. Sometimes referred to as expected in input two. Field 4 can be used to control where the output goes if field 4 = 68 then field 10 or field 11 is sent to input, if field 4 = 69 field 10 or field 11 is sent to the output.
IfFileExist if filename in the file field exits then put field 7 into input if not put field 8 into input.
ImageLoad this keyword loads an image into the DX Window. Direct X (DX) is a way for programs to use the resources of the graphics card. The Ai uses the DX window to process images doing it this way speeds up processing time. The keywords ImageLoadScan and ImageScanVertical use the DX functions if the DX window is open if not then they use the normal image window. The robot uses ImageLoadScan and ImageScanVertical using the DX window reduces image processing time on my machine from 4 seconds to under a second.
ImageLoadScan file field is the filename of the image to load if empty then the existing image is used. The processes then scans the image and loads the image variable. This process runs in a separate thread due to the time the scanning process takes, on my machine about 4 seconds. Having it in a thread means the Ai can finnish its processing whilst the scanning is still happening. I use this keyword with the ImageScanVertical keyword for the robot. I load the image from the robots web cam using ImageLoadScan then the keyword ImageScanVertical then the information from this in the form of the input code of cell 936 is used to control the drive motors.
C ell 936 order field controls where down the image to start the scan from increases scan speed but not by much! The number in field 7 is the cell to activate when the thread has finished, note this cell is not changed during defrag so to be on the safe side use a cell bellow 800 these cells aren't touched by Defrag.
ImageScan scans the display and retains information on the image.
ImageScanVertical The process scans the image variable for vertical lines after it has been set up by ImageLoadScan. This is used by the robot to locate objects that have sharp edges. What information is displayed and returned is controlled and held in cell 936.
ImageCompair scans the display and compares the collected data with the data from a previous ImageScan.
ImageCompairZone similar to imagecompair but isolates the zone of most change and sends the name of the zone to the input. At present there are 3 zones
zone0 = little or no change error count < 10, zone2 left half of image zone3 right half of image. The code for 5 zones is embedded in the program but in order to make it work with the USB K8055 card moving a web cam the zone routine has been desensitized!
If this keyword is invoked from a cell activation then the timer may need to be stopped first. The timer can interrupt processes and cause things to go weard. If the keyword is invoked from an inputted word then the timer is automatically stopped before the input is processed.
IndexFolders scans the folder and sub folders starting at the folder in file field and writes the folder names to text file 'DirNames.txt' which can be found in the data folder, use wildcard *.* at the end of name. E.g. c:\temp\*.* This means all files in the folder are read and directories are picked out and added to the list without the *.* the keyword wont work properly.
IndexFiles sets up a search file that can be used by searchinfofile or as a play list. The filename in field 10 is created, this contains the filenames of the files in the folder. Field 11 holds the type of files to include. File field holds the folder to start the search. If looking for .doc files include the capitalized version in field 11 eg. doc DOC txt TXT etc.
IndexFilesAppend like indexfiles, but instead of creating a new file it adds indexes files to the existing filenames file in field 10. File field is the folder to start searching for files, field 11 is the file types to include.
IPautoRXon turns on auto RX IP. If settings is opened then the original value is set.
IPautoRXoff turns off auto IP if settings is opened then the original value is set.
IPRXFromFile reads file field and uses the found IP number for sending to then restarts UDP routine. If there is a word in field 10 then the HtmlExtractor routine is used. The IP number is assumed to be after the keyword until < is found. This tells the routine that a html tag has been found. HtmlExtractor is used when getting the IP number from an online source i use checkip.dyndns.com or checkip.dyndns.com:8245/
these create a web page that can be used when downloaded using download file.
IPRXToFile writes IP number of local machine to file in file field.
IPRXAuto closes down UDP and restarts it setting auto IP RX in settings, finds local IP number.
IPTXFromFile same as IPRXFromFile but changes the TX IP number.
KnownWords extracts words from the file in file field and creates a results file with the same name and extension except with an x on the end of the filename extension. The words are not in the same order as the words from the original file. This routine is useful if still getting gobbledygook words after the ExtractWords process.
KnownWordsTwo extracts the known words from the data created by ExtractWords and writes the results to the file: KWNFile.txt in the main Ai folder. The first 200 extracted words are sent to the output. To exclude words that are known but not wanted in the output, set the words Mode field to 1.
Only words in the highest defrag area of the BD are used.
LookInLog look in today's log for the word/s, 40 must be in field 11 and a paten must be used to trigger the search.
LowPower turns of WSB and SE processing so saving on system resources.
MessageBox field 8 are the words in the message box, field 11 is the caption.
NA not applicable,not a keyword if na found then the keyword routine is bypassed
NewSum resets maths variable to 0 same as the cancel button on a calculator see also ShowSum.
NextSong moves to the next track on the play list.
nnA1In reads the USB analogue 1 input, converts it to a NN code (9 bit binary) and sets the NN input code.
nnA2In reads the USB analogue 1 input, converts it to a NN code (9 bit binary) and sets the NN input code.
nnActivateCell activates the Brain cell number in field 11.
nnChangeCellInput change the input code of the cell in file field to the input code of the cell in field 10
nnChangetoCodeIn7 changes the input code to the code in field 7
nneEventOn turns on activation of cell 1601 when a Brain event change is noticed to a cells input.
The file NNECCNewFile.txt is created in the program folder. This file records the nne entries that have changed.
To stop a cell's change being recognized as an event use the tag <eventno> in the cell, to exclude it from the event scan.
If the Tag <eventactivate> is in a cell that records an event then the cell is activated.
System cells 1000 to 2000 are scanned for changes.
nneEventOff turns off Brain cell 1601 activation on Brain event.
nneOnTimerOn turns on cell 1505 activation on timer.
nneOnTimerOff turns off activation of cell 1505 on timer.
nneOnLoopOn turns on cell 1507 activation on timer loop.
nneOnLoopOff turns off activation of cell 1507 on timer loop.
nneOnUDPon turns on cell 1506 activation on new udp or window message.
nneOnUDPoff turns off activation of cell 1506 on new udp or window message.
nneSetInputs sets the Brain inputs, changes the input code to that of field 7 does entries from number in file field to number in field 10.
nneScanImage Brain cell 921 holds information for this keyword look at system cells cell 921 for more information.
nnTrain trains the NN using the training file in the file field.
nnWeightsSave saves the NN weights to filename in the file field.
nnWeightsLoad loads the weights into NN filename in file field.
nnWorkMatrix activates the matrix file in the file field.
OutputToClipboardOn turns on sending output to clipboard.
OutputToClipboardOff turns off the output to the clipboard.
PlayWAVSound plays the WAV file in the file field, the wav file must be in the 'sounds' folder, mostly used for system sounds.
PlaySong plays the song in the file field full path recognized types .mp3, .wav, .kar, .mid.
PlayPlaylist the file field holds file name of the file that holds the file names that are played by the mp3 sound routine. The Play list number in settings is the position in the file to start reading the names from the play list will play constantly till the end of the list unless stopped. Play lists can be created using indexfiles. The default play list is called TempPlaylist.txt and can be found in the Data folder.
PutInInput puts the contents of field 8 into the Ai input, Operation must be 0
Put8InInput this is a field 11 keyword it puts the contents of field 8 into the input.
Put9InInput puts the contents of the file field into the input.
ReadFile this process apples some filtering functions before reading the file to the input or output.
If Mode 1 = read to output.
If Mode 0 = read to input.
Field 7 is the line in the file to start reading from if empty or 0 then nothing will happen.
I wrote this function to read out my facebook notifications which end up in a text file created by AutoLearn The text i want is about 46 lines down.
if CheckWords is in field 11 then the words in the file are checked for in the BD. Words not found in the BD are rejected from the output. I might add the ability to exclude words but this is tricky as it could cause conflict with our routines.
Field 10 is the cell to activate after the file has been read the TimerLength variable is altered to give enough time for the readout script to finnish before the next line is read. The length of the output is multiplied by 70 to give the timerlength in milliseconds. TimerLength is returned to its original value once file read completes.
ScanDownload file field is file name of file to search for word/s in field 8.
ScanForNewFile field 11 is the extension to look for eg. .txt. The file field is the filename to search for eg. C:\Users\piet\Documents\allwork\ftp\*.*
ScanForNewJPGFile looks in a folder to see whether an new .jpg (picture file) has been added, if it has it is copied to the image folder and called newimage.jpg all the jpg pictures in the folder are then deleted so the next image that appears will be the correct one to copy when monitoring a picture folder that is receiving images from say a motion detecting web cam. The file name in file field needs to have *.* at the end eg. C:\Users\piet\Documents\allwork\ftp\*.*
If there is a new file then field 8 is put in the input if not then field 10 is put in the input.
ScanImageFull image scanning and analysis routine. An attempt to get more information from an image, work out what the image is and what objects in the image are
ScrolOutput turns on the scrole output to the USB K8055 card.
SearchInfoFile searches indexed files. The file field is the filename of the file holding the filenames of the files to search.
If in the search output file 'files were searched' value doesn't seem right then one of the files searched has caused a variable overload in the search routine and corrupted the number of files searched variable. This shouldn't cause any instability issues. The file that has corrupted the variable will be one that has no text next line code and is larger than 1000000 bytes.
SearchTextFile STF look in the text files in entry 819, file field and field 10. Field 11 is the file name of a text file holding more filenames to be searched. It will carry on searching the files in the list until the end of the file is reached usually called searchfiles. A file called searchresults.txt is created and can be found in the readout folder this file holds the results from the search routine. This file can be read into the input or output. The word in field 8 is sent to the input and this can trigger a file read into the input or output using FileToInput or FileToOutput. Whilst the search routine has been designed to be able to search through any type of file non text files contain special characters which can cause lines to be skipped or end of file notifications to be sent, thus causing the file search to be terminated without searching properly. This can happen with compressed files or data files. Such files are specific to the program that use them and don't necessarily use the standard ASCII format. Iv tested .doc.rtf .txt .html and had no problems with the search. I have also tested stability by searching a 1gb video file, it found nothing in the file and took a while but the program didn't crash.
SearchFileIn9 searches for the word in field 10, if field 10 is empty then the cell word is used. The file name full path in file field is searched, the last found entry is sent to the output. If field 4=68 then the output is sent to the input.
SearchFolder sets up a search file that can be used by SearchInfoFile. The file searchtemp.txt is created in the data folder, this contains the filenames of the files in the folder. Field 10 holds the type of files to include. File Field holds the folder to search *.* is required if all files in folder are to be included eg. c:\temp\*.* will search all files in temp any files with an extension present in field 10 will have there name added to the searchtemp.txt file. The extensions are case sensitive so if you are looking for say zip files make sure you include ZIP in field 10 as well. If nothing is in field 10 then all filenames and folder names are added to the list.
SearchInfront uses the words in front of the word that has the keyword for searching, uses the search text file information in system cell 819 note field 10 in cell 819 is now the output file name if blank the default searchresults.html file name is used and written to the readout folder. Note this process uses some RAS routines, if RAS sliders in RQ settings are at 0 then this keyword wont work properly.
SearchUsingIndex like search InfoFile but uses the indexed file names in the file indexfiles.txt created by the keyword indexfiles in the data folder.
SendMessageToWindow sends field 8 to the window name in the file field. To get the Ai to receive messages it need extra code on the end eg.pw:1234 o-i
pw:=password and the end of message marker, 1234=Ai password o-i=where to put the message
If the tag <toprint> is in field 8 then the contents of the ToPrint variable is used if the tag <swopvar> is in field 8 then the contents of the SwopVar variable is used.
If using the character AiChar.exe program add pw: to the end of the message in field 8.
example to send a message to AiChar.exe
field contents
file AiChar
keyword sendmessagetowindow
field 8 this is a message pw:
Cell 918 is the default settings used when send message to window is ticked in settings
If for some totally inexplicable reason this keyword fails to work try MessageToWindow this peculiar bug was spotted on an XP machine running a robot.
SendOrderToWindow sends an order to the window name field 10 is the window to send to field 8 is the order at the moment the only order is close which closes the window.
SendToBrowser sends commands to the browser program, sends contents of field 10 to URL bar.
<refresh> sends the instruction to refresh the page. some mode switches can also be used used.
If mode = 0 just send field 10 to browser.
If mode = 1 send field 10 add the output.
If mode = 2 send field 10 add the input.
SendToIP changes the send to IP number in settings to the number in field 10 and then resets UDP.
SendToTray send the Ai program to the system tray.
SetFocus sets the Ai as focus and brings the Ai window to top using the script SetFocus.aut.
SetRQWeights used to set the RQ's. The numbers in field 11 sets the RQ's in order, look in settings for more.
ShowBadWords bad words from input are sent to the output.
ShowImage loads the image in the file field into the Image window another way of showing image without changing the Operation field to 3. Images are stored in the image folder.
ShowImageFP loads the image full path filename in file field into the Image window.
ShowSongName outputs the name of the song currently playing.
ShowSongNameFull outputs the full path filename of the song currently playing.
ShowStatsOff turns of statistics display in Image window.
ShowStatsOn turns on statistics display in Image window.
ShowSubject sends the subject description to the output.
ShowSum show the maths result cell 818 field 8 is put in front of the answer.
SixPClean resets in cell fields 5 and 6 to 0. These are the fields that 6p learning sets up.
SixPLearnOn turns on 6P learning each timer loop, this means learning can be done when the Ai is idle and means inputs are processed at the normal speed.
SixPLearnOff turns off 6P learning each timer loop.
SortFile sorts the file in the file field into another file with the same name but with an x added to the filename extension.
Words in the read file are joined together so new lines of text are of a similar length.
If CheckWords is in field 11 then the words are checked for in the BD and only know words are written to the file.
If ExcludeWords is in field 11 then if the contents of field 7, 8 or 10 are in the line of text then the line is omitted from the output file. This is useful if random bits of web code get through the filtering process.
SoundToOn turn on sound to light, uses the analogue input from the k8055 card then sends signals to DMX channels 1 to 3, this causes the Ai to run at about 50% processing power. inputting something into the Ai stops the process.
SoundToOff turns off sound to light.
srfon turns on SR filter
srfoff turns off SR filter
StartTimer starts the main timer.
STFile the word in field 7 is searched for in the filename in the file field.
StopDownload stops file download.
StopNetwork switches off file reads.
StopSong stops a song started with the PlaySong or PlayPlaylist keyword
StopSongAtNext stops at the end of the track playing.
StopTimer stops main program timer.
System file field is the program to run, field 10 is the extra command to send to the program being run.
UDPf8f9Send sends via UDP field 8 using the code in the file field as opposed to using entry 809 BD which is the default UDP entry.
This is also used when sending remote BC activation, eg. field 8 = in:000001111 ac:2376 f9=pw:1234do:o-o
where 1234 is the password of the remote ai and o-o tells the receiving Ai what to do with the information. The IP number and en: is added to the end of he packet by the program . The receiving Ai also looks for the keywords ac: and in:, ac:=activate cell, in:=input code. If there is no input code then the cells input code is used.
UDPf8f9SendForce if f8 is empty then the output is used
UDPRestart restarts the UDP connection.
UpdateSettings reloads the settings file.
UpDateBrain updates the Brain from a text file. The file in the file field is used, if empty then the file used is NewBrainData.txt in the data folder. The button New Data adds the cells data to the NewBrainData.txt this is used for moving data from one Ai to another.
USBd1d2noadd nothing added to usb button counter input
USBd1d2add01 adds number if not 0 to usb button counter input.
USBd1d2add02 adds number if not 0 to usb button counter input.
USBd1d2add03 adds number if not 0 to usb button counter input.
USBd1d2add04 adds number if not 0 to usb button counter input.
USBd1d2add05 adds number if not 0 to usb button counter input.
USBOn turns on USB.
USBOff turns off USB K8055 card.
WriteInputFile writes the input to the file in the file field, field 10 is added to the input.
WriteOutputFile writes the output to the file in file field, puts the contents of field 8 in front of the output then the contents of field 10 after the output. If the output variable ToPrint hasn't been set by the time this Keyword is invoked then there will be no output.
Example to write a vbs script to speak the output, after the script has been written the script is run using the keyword system. The cell 1178 is activated at the SayPrint routine when the output is being sent to various places.
The file name in the file field needs to point to a existing folder and must have the extension .vbs
the tag <activate cell:1234> can be any cell that has the same contents
cell 1178
field contents
tags <keyword-ifa><activate cell:1234>
file ...\Talk.vbs
keyword writeoutputfile
field 8 Set Sapi=CreateObject("sapi.spvoice"):sapi.speak "
field 10 "
cell 1234
field contents
tags <keyword-ifa>
file ...\Talk.vbs
keyword system
WriteToFile puts the contents of field 8 into the file field.
WSB output filters
wsb8ToInput
wsb8ToOutput
wsbAll allows all WSB outputs to be used.
wsbResistance resistance words used for WSB output.
wsbVarience resistance variance words used for WSB output.
wsbWave wave words used for WSB output.
wsbHide hide WSB window.
wsbShow show WSB window.
Keywords
The Keyword field is used to associate a Keyword to a Cell Word. When the Cell Word is found in the input then the Keyword function is triggered.
To stop a cell word being used in the output then set the Type field to 40.
If a cell with a keyword is activated then the keyword is only used if there is a keyword tag in the tags field.
AiOn turns on Ai output.
AiOff turns off Ai output NOTE this only turns off the Ai's response it doesn't switch off functions.
AiWindowHide hides the Ai so its only viable as a process
AiWindowShow restores the Ai window NOTE if you have no communication with the hidden Ai then you wont be able to access it. The only way to close it is to end the process in Task Manager. There is no problem closing the program this way so don't worry about any warnings you may receive.
Alarm field 7 = alarm time, format: HH:MM
The cell is activated if the time is found. Cell 940 in cell fields hold the cell numbers of cells with an Alarm Keyword only 9 alarms can be set. This is done like this to cut down on processor usage. Cell 940 is updated when the SaveBrain process is activated or when update is pressed.
AllowRepeat allows an answer to be repeated, works the same as f3 TF = 25, this gives another way of repeating the output
AlwaysAnswerOn activates Auto Ai on bad RQ default is off.
AlwaysAnswerOff turns off Auto Ai on bad RQ.
AnalogueInputToInput puts the USB analogue input into the Ai input.
AnalogueInputToOutput puts the USB analogue input into the Ai output.
AOutNNEOn the input code of cell 1603 and 1604 is used to control the analog output value a1 and a2 on the k8055 card
AOutNNEOff turns off Brain to analog outs
AutoInputOn turns on automatic input, grabs text after you've finished typing.
AutoInputOff turns off automatic input so you have to press OK or ENTER to put text into the input.
AutoIt autoit.exe must be in the path and .aut associated to it, then field 8 is the autoit script to run, field 7 is the reply if script is found. This performs a system command on field 8 and looks in the scripts folder for the AutoIt script to run.
AutoLearn this keyword uses the DownloadFile and ExtractWords processes when a bad word is found see cell 931 for details on how this works. Here are settings for Wikipedia.
field contents
tags <keyword-ifa>
mode 4
operation 10
keyword AutoLearn
field 8 en.wikipedia.org/wiki/Special:Search?search=
Beep file field is the frequency field 10 is the duration, processing stops whilst the sound is produced.
BrightSpot counts the number of bright spots on the image sends the answer to output, start of the find brightest area in a room when viewing with a web cam.
BrightSpotCompair compares the number of brightspot's with the number generated by a BrighSpot keyword if there are more bright spots then field 10 is put
into the input if there are less brightspot's then field 11 is put into the input.
The input code of the cell is changed to the results of the function
000001111 means there are exactly the same number of bright spots
000000011 means there are less bright spots
000001100 means there are more
BulkWrite writes cell data to a text file. Like pressing New Data button but this keyword bulk writes the data from cell number in field 7 to the cell number in field 10. The file field holds the name of the file to write to. A new file is created and the data added to it but if the filename is NewBrainData.txt which is the file used by the New Data button then the cell data is added to the file without creating a new file.
ChangeToGetStartPath converts address in the BD to <getstartpath> only address that contain the start path will be converted.
ChangeGetStartPath converts <getstartpath> found in the BD to the proper address.
CheckFix activates the CheckAndFix routine that normally runs when the Ai builds a BD when no existing BD is present in the data folder. If run as a keyword only system cells not set will be updated. The cells updated are:
809 f9 to o-o
810 set to spud ai web site
815 set f7,f8,f10,f11
818 f8,f10
819 STF
822 RQ defaults
841 SJ Subject
860 Emotion
861 SJN Subject New
910 SEN
920 6p
922 LM
923 LM
924 NNE exclude
931 LM web add
932 LM RAS
2000
2001 set to "is" for QI
2002 set to "what" for QI
2003 set to "indexfiles"
2004 UpdateBrain Keyword
indexfiles is activated to give RAS and PAR something to work with
CleanNode resets a in cell field to 0. Sometimes words start to appear that aren't wanted this is sometimes caused by repeat references to words CleanNode is a way of removing these words by removing the connections to them.
ClearAllDigital clears all digital channels.
ClearDigital1to4 this clears digital channels 1 to 4 at the end of the processing cycle this enables faster switching. If cleardigital1to4 is in Keyword field of the word that turns the channel on then it will stay on for a shorter time.
ClearDigital5to7 clears digital channels 5 to 7.
ClearDigital1to4Immediatley clears channels immediately as soon as this key word is found.
ClearDigital5to7Immediatley clears channels immediately as soon as this key word is found.
ClearInputs clears all input buffers including all PutInInput variables.
ClearToPrint clears the ToPrint variable which is used to hold the output.
ClearPutInInput clears PutInInput variables.
ClearTagOnce clears the tag once variable
CloseWindow close the window name in field 9.
ConnectToInternet uses the InternetAttemptConnect command in wininet.dll.
CreateHTML uses the new create html routine. File is the source file, field 10 is the output file. This works in the same way as cell 831 but uses the information in the cell instead of cell 831. The tags are placed in the source file and are acted upon when read by the program.
<aioutput> this tag is changed for the output from the Ai
<cell:1234> activates the brain cell number following cell: the tag is replaced with the output from the cell.
These tags can be inserted in other text which isn't changed. Best practice is to use only one tag in a line.
DebugMini sends the scroll output to the debugger only.
DebugOff turns off outputs to debugger.
DebugOn turns on outputs to debugger you need to have a debugger program running. Information sent to the debug program is more detailed and includes many messages that don't appear any ware else.
DInActivateOn activates cells 1155 or 1154 or 1176 when K8055 digital channels 1,2,3,4 or 5 are activated. Input code of 1176 is altered according to the digital ins rightmost node =d5 next in =d4 and next=d3.
DInActivateOff de-activates cell 1176 activation on digital in.
DisconnectFromInternet disconnects internet connection.
DoesConnectionExist does internet connection exist if yes field 10 if no field 11 if Operation or Type fields are 68 then the output is put into the input.
DoesFileExist checks to see if the filename in file field exits, if yes read response infield 7 if no read response in field 8.
DoesWindowExist if the window name in file field exists then field 10 is used for the output, if not then field 11 is used. If Operation or Type field is set to 68 then the output is sent to the input.
DOutNNEOn allows the input nodes 1 to 8 of cell 1504 to activate digital outputs 1 to 8.
DOutNNEOff turns off Brain to digital outs.
DownloadFile The external program dlf.exe is used to download the file from the server name in field 10 to the file in the file field. Using downloadfile allows the Ai to continue processing if you want processing to stop whilst the download is happening then use the keyword DownLoadFileWait. The file dlf_output.txt holds the results of the download.
DownloadFileWait field 10 is the full web address of the file to down load. The program waits for the download to finnish before continuing processing. Field 7 is the cell to activate when the download completes.
dlf_output.txt is deleted before the download starts.
The process causes the Ai to freeze during the download which is useful if the AI then acts on the downloaded file but if you want the AI to continue processing use the DownloadFile instead. This keyword uses the external program dlf.exe to download the file.
DTLearn uses a keyword to trigger the DT learning routine. The keyword is removed from the input then the input is put into the output box and the DT learning routine is activated. The Ai continues to process the input after the DT learning routine has finished. This is used so you can update using DT from the input box rather than typing directly into the output box useful when training the Ai remotely through a web page or other input. If there is an entry if field 7 then this is removed from the input as apposed to Cell Word, this is useful when activating using say a pattern code.
If "is the sentence code for" was in the previous output then field 8 of the sentence code or pattern is changed instead.
EventActivate activates the cell if an event occurs.
ExpectedInInput this tells the Ai to look for the words in field 8 or file field in the next input see word in input expected paragraph for more details.
ExtractWords extracts the words and numbers from a document holding tags or scripts like a web page. It works as a simple parser for web pages so the document can be used as source material by the Ai. A lot of web pages these days are made up of scripts and objects that source data directly from databases, these type of pages have very little real text so the process sometimes produces a blank page. Words are extracted from the file name in the file field. The new file is the same name but with x added to the extension.
If the Operation field is set higher than 0 then the extracted file is scanned and the number of lines down as specified by the Operation field is sent to the output. ExtractWords also sets up the variable used by the KnownWordsTwo keyword.
f7Activatef10Millisec activates the cell number in field 7 in field 10 milliseconds.
f8Activatef10Millisec activates the cell number in field 8 in field 10 milliseconds.
f8ToInputf10Millisec starts the timer to the value in field 10, in millisecond then puts contents of field 8 into input when the timer is up.
Face goes directly to face drawing routine using the cell number that activated the keyword. The output code is used to move the eyes and mouth. Each node operates an element of the face.
As your looking at the face the eyes pupil are moved to the position using the output code in the following way
node 1 pupils to bottom right
node 2 bottom middle
node 3 bottom left
node 4 middle right
node 5 middle middle looking straight at you
node 6 middle left
node 7 top right
node 8 top middle
node 9 top left
the mouth is made up of 4 elements which are either up or down
node 1 left top line left 0=down 1=up
node 2 left top line right 0=down 1=up
node 3 right top line left 0=down 1=up only if left top line right is in same place, stops the mouth looking weard
node 4 right top line right 0=down 1=up
node 5 left bottom line left 0=up 1=down
node 6 left bottom line right 0=up 1=down follows node 7
node 7 right bottom line left 0=up 1=down follows node 6
node 8 right bottom line right 0=up 1=down
The expressions and the associated code might be used as the emotion variable which is a new idea to give more information on words.
FaceOn turns on face drawing in image window.
FaceOff turns off face drawing.
FastScript turns off the main Ai timer and reads the script file name in file field into the Ai if file field is empty then the file name in field 8 is used. It is assumed that the script is in the scripts folder this is for compatibility with older Ai databases. Normal processing continues after the script has been read. If timer: followed by a number is in the script then the value is the time between each read of the line the default setting is 500ms.
FileToInput reads the file in the file field into the input sentence by sentence every timer loop. The document should be a text doc with a return less than every 256 characters
other wise the string variable will cause a GFP. If a GPF is caused paste the document into notepad, turn off world wrap and press return at the end of the
line. The Mode field of entry 832 is the mode used to translate the input, the same as Auto Ai. If the file field is empty then field 10, if not empty, is used. Field 10 is added to the Ai startpath so you can read a file to the input if its in the same folder as the main Ai program. This is used so the keyword still works if the Ai is on a different drive.
FileToOutput this is exactly the same as FileToInput but it sends the data to the output buffer.
HostToIP field 10 is the host name to find the IP number of, field 8 is the IP number found. This function uses some of the UDP processes so Enable UDP needs to be ticked in settings. To Enable HostToIP but disable UDP un-tick RX and TX.
if8or9do10or11 if the word in field 8 is in the next input do field 10. Ff the word in field 9 is in the next input do field 11. Sometimes referred to as expected in input two. Field 4 can be used to control where the output goes if field 4 = 68 then field 10 or field 11 is sent to input, if field 4 = 69 field 10 or field 11 is sent to the output.
IfFileExist if filename in the file field exits then put field 7 into input if not put field 8 into input.
ImageLoad this keyword loads an image into the DX Window. Direct X (DX) is a way for programs to use the resources of the graphics card. The Ai uses the DX window to process images doing it this way speeds up processing time. The keywords ImageLoadScan and ImageScanVertical use the DX functions if the DX window is open if not then they use the normal image window. The robot uses ImageLoadScan and ImageScanVertical using the DX window reduces image processing time on my machine from 4 seconds to under a second.
ImageLoadScan file field is the filename of the image to load if empty then the existing image is used. The processes then scans the image and loads the image variable. This process runs in a separate thread due to the time the scanning process takes, on my machine about 4 seconds. Having it in a thread means the Ai can finnish its processing whilst the scanning is still happening. I use this keyword with the ImageScanVertical keyword for the robot. I load the image from the robots web cam using ImageLoadScan then the keyword ImageScanVertical then the information from this in the form of the input code of cell 936 is used to control the drive motors.
C ell 936 order field controls where down the image to start the scan from increases scan speed but not by much! The number in field 7 is the cell to activate when the thread has finished, note this cell is not changed during defrag so to be on the safe side use a cell bellow 800 these cells aren't touched by Defrag.
ImageScan scans the display and retains information on the image.
ImageScanVertical The process scans the image variable for vertical lines after it has been set up by ImageLoadScan. This is used by the robot to locate objects that have sharp edges. What information is displayed and returned is controlled and held in cell 936.
ImageCompair scans the display and compares the collected data with the data from a previous ImageScan.
ImageCompairZone similar to imagecompair but isolates the zone of most change and sends the name of the zone to the input. At present there are 3 zones
zone0 = little or no change error count < 10, zone2 left half of image zone3 right half of image. The code for 5 zones is embedded in the program but in order to make it work with the USB K8055 card moving a web cam the zone routine has been desensitized!
If this keyword is invoked from a cell activation then the timer may need to be stopped first. The timer can interrupt processes and cause things to go weard. If the keyword is invoked from an inputted word then the timer is automatically stopped before the input is processed.
IndexFolders scans the folder and sub folders starting at the folder in file field and writes the folder names to text file 'DirNames.txt' which can be found in the data folder, use wildcard *.* at the end of name. E.g. c:\temp\*.* This means all files in the folder are read and directories are picked out and added to the list without the *.* the keyword wont work properly.
IndexFiles sets up a search file that can be used by searchinfofile or as a play list. The filename in field 10 is created, this contains the filenames of the files in the folder. Field 11 holds the type of files to include. File field holds the folder to start the search. If looking for .doc files include the capitalized version in field 11 eg. doc DOC txt TXT etc.
IndexFilesAppend like indexfiles, but instead of creating a new file it adds indexes files to the existing filenames file in field 10. File field is the folder to start searching for files, field 11 is the file types to include.
IPautoRXon turns on auto RX IP. If settings is opened then the original value is set.
IPautoRXoff turns off auto IP if settings is opened then the original value is set.
IPRXFromFile reads file field and uses the found IP number for sending to then restarts UDP routine. If there is a word in field 10 then the HtmlExtractor routine is used. The IP number is assumed to be after the keyword until < is found. This tells the routine that a html tag has been found. HtmlExtractor is used when getting the IP number from an online source i use checkip.dyndns.com or checkip.dyndns.com:8245/
these create a web page that can be used when downloaded using download file.
IPRXToFile writes IP number of local machine to file in file field.
IPRXAuto closes down UDP and restarts it setting auto IP RX in settings, finds local IP number.
IPTXFromFile same as IPRXFromFile but changes the TX IP number.
KnownWords extracts words from the file in file field and creates a results file with the same name and extension except with an x on the end of the filename extension. The words are not in the same order as the words from the original file. This routine is useful if still getting gobbledygook words after the ExtractWords process.
KnownWordsTwo extracts the known words from the data created by ExtractWords and writes the results to the file: KWNFile.txt in the main Ai folder. The first 200 extracted words are sent to the output. To exclude words that are known but not wanted in the output, set the words Mode field to 1.
Only words in the highest defrag area of the BD are used.
LookInLog look in today's log for the word/s, 40 must be in field 11 and a paten must be used to trigger the search.
LowPower turns of WSB and SE processing so saving on system resources.
MessageBox field 8 are the words in the message box, field 11 is the caption.
NA not applicable,not a keyword if na found then the keyword routine is bypassed
NewSum resets maths variable to 0 same as the cancel button on a calculator see also ShowSum.
NextSong moves to the next track on the play list.
nnA1In reads the USB analogue 1 input, converts it to a NN code (9 bit binary) and sets the NN input code.
nnA2In reads the USB analogue 1 input, converts it to a NN code (9 bit binary) and sets the NN input code.
nnActivateCell activates the Brain cell number in field 11.
nnChangeCellInput change the input code of the cell in file field to the input code of the cell in field 10
nnChangetoCodeIn7 changes the input code to the code in field 7
nneEventOn turns on activation of cell 1601 when a Brain event change is noticed to a cells input.
The file NNECCNewFile.txt is created in the program folder. This file records the nne entries that have changed.
To stop a cell's change being recognized as an event use the tag <eventno> in the cell, to exclude it from the event scan.
If the Tag <eventactivate> is in a cell that records an event then the cell is activated.
System cells 1000 to 2000 are scanned for changes.
nneEventOff turns off Brain cell 1601 activation on Brain event.
nneOnTimerOn turns on cell 1505 activation on timer.
nneOnTimerOff turns off activation of cell 1505 on timer.
nneOnLoopOn turns on cell 1507 activation on timer loop.
nneOnLoopOff turns off activation of cell 1507 on timer loop.
nneOnUDPon turns on cell 1506 activation on new udp or window message.
nneOnUDPoff turns off activation of cell 1506 on new udp or window message.
nneSetInputs sets the Brain inputs, changes the input code to that of field 7 does entries from number in file field to number in field 10.
nneScanImage Brain cell 921 holds information for this keyword look at system cells cell 921 for more information.
nnTrain trains the NN using the training file in the file field.
nnWeightsSave saves the NN weights to filename in the file field.
nnWeightsLoad loads the weights into NN filename in file field.
nnWorkMatrix activates the matrix file in the file field.
OutputToClipboardOn turns on sending output to clipboard.
OutputToClipboardOff turns off the output to the clipboard.
PlayWAVSound plays the WAV file in the file field, the wav file must be in the 'sounds' folder, mostly used for system sounds.
PlaySong plays the song in the file field full path recognized types .mp3, .wav, .kar, .mid.
PlayPlaylist the file field holds file name of the file that holds the file names that are played by the mp3 sound routine. The Play list number in settings is the position in the file to start reading the names from the play list will play constantly till the end of the list unless stopped. Play lists can be created using indexfiles. The default play list is called TempPlaylist.txt and can be found in the Data folder.
PutInInput puts the contents of field 8 into the Ai input, Operation must be 0
Put8InInput this is a field 11 keyword it puts the contents of field 8 into the input.
Put9InInput puts the contents of the file field into the input.
ReadFile this process apples some filtering functions before reading the file to the input or output.
If Mode 1 = read to output.
If Mode 0 = read to input.
Field 7 is the line in the file to start reading from if empty or 0 then nothing will happen.
I wrote this function to read out my facebook notifications which end up in a text file created by AutoLearn The text i want is about 46 lines down.
if CheckWords is in field 11 then the words in the file are checked for in the BD. Words not found in the BD are rejected from the output. I might add the ability to exclude words but this is tricky as it could cause conflict with our routines.
Field 10 is the cell to activate after the file has been read the TimerLength variable is altered to give enough time for the readout script to finnish before the next line is read. The length of the output is multiplied by 70 to give the timerlength in milliseconds. TimerLength is returned to its original value once file read completes.
ScanDownload file field is file name of file to search for word/s in field 8.
ScanForNewFile field 11 is the extension to look for eg. .txt. The file field is the filename to search for eg. C:\Users\piet\Documents\allwork\ftp\*.*
ScanForNewJPGFile looks in a folder to see whether an new .jpg (picture file) has been added, if it has it is copied to the image folder and called newimage.jpg all the jpg pictures in the folder are then deleted so the next image that appears will be the correct one to copy when monitoring a picture folder that is receiving images from say a motion detecting web cam. The file name in file field needs to have *.* at the end eg. C:\Users\piet\Documents\allwork\ftp\*.*
If there is a new file then field 8 is put in the input if not then field 10 is put in the input.
ScanImageFull image scanning and analysis routine. An attempt to get more information from an image, work out what the image is and what objects in the image are
ScrolOutput turns on the scrole output to the USB K8055 card.
SearchInfoFile searches indexed files. The file field is the filename of the file holding the filenames of the files to search.
If in the search output file 'files were searched' value doesn't seem right then one of the files searched has caused a variable overload in the search routine and corrupted the number of files searched variable. This shouldn't cause any instability issues. The file that has corrupted the variable will be one that has no text next line code and is larger than 1000000 bytes.
SearchTextFile STF look in the text files in entry 819, file field and field 10. Field 11 is the file name of a text file holding more filenames to be searched. It will carry on searching the files in the list until the end of the file is reached usually called searchfiles. A file called searchresults.txt is created and can be found in the readout folder this file holds the results from the search routine. This file can be read into the input or output. The word in field 8 is sent to the input and this can trigger a file read into the input or output using FileToInput or FileToOutput. Whilst the search routine has been designed to be able to search through any type of file non text files contain special characters which can cause lines to be skipped or end of file notifications to be sent, thus causing the file search to be terminated without searching properly. This can happen with compressed files or data files. Such files are specific to the program that use them and don't necessarily use the standard ASCII format. Iv tested .doc.rtf .txt .html and had no problems with the search. I have also tested stability by searching a 1gb video file, it found nothing in the file and took a while but the program didn't crash.
SearchFileIn9 searches for the word in field 10, if field 10 is empty then the cell word is used. The file name full path in file field is searched, the last found entry is sent to the output. If field 4=68 then the output is sent to the input.
SearchFolder sets up a search file that can be used by SearchInfoFile. The file searchtemp.txt is created in the data folder, this contains the filenames of the files in the folder. Field 10 holds the type of files to include. File Field holds the folder to search *.* is required if all files in folder are to be included eg. c:\temp\*.* will search all files in temp any files with an extension present in field 10 will have there name added to the searchtemp.txt file. The extensions are case sensitive so if you are looking for say zip files make sure you include ZIP in field 10 as well. If nothing is in field 10 then all filenames and folder names are added to the list.
SearchInfront uses the words in front of the word that has the keyword for searching, uses the search text file information in system cell 819 note field 10 in cell 819 is now the output file name if blank the default searchresults.html file name is used and written to the readout folder. Note this process uses some RAS routines, if RAS sliders in RQ settings are at 0 then this keyword wont work properly.
SearchUsingIndex like search InfoFile but uses the indexed file names in the file indexfiles.txt created by the keyword indexfiles in the data folder.
SendMessageToWindow sends field 8 to the window name in the file field. To get the Ai to receive messages it need extra code on the end eg.pw:1234 o-i
pw:=password and the end of message marker, 1234=Ai password o-i=where to put the message
If the tag <toprint> is in field 8 then the contents of the ToPrint variable is used if the tag <swopvar> is in field 8 then the contents of the SwopVar variable is used.
If using the character AiChar.exe program add pw: to the end of the message in field 8.
example to send a message to AiChar.exe
field contents
file AiChar
keyword sendmessagetowindow
field 8 this is a message pw:
Cell 918 is the default settings used when send message to window is ticked in settings
If for some totally inexplicable reason this keyword fails to work try MessageToWindow this peculiar bug was spotted on an XP machine running a robot.
SendOrderToWindow sends an order to the window name field 10 is the window to send to field 8 is the order at the moment the only order is close which closes the window.
SendToBrowser sends commands to the browser program, sends contents of field 10 to URL bar.
<refresh> sends the instruction to refresh the page. some mode switches can also be used used.
If mode = 0 just send field 10 to browser.
If mode = 1 send field 10 add the output.
If mode = 2 send field 10 add the input.
SendToIP changes the send to IP number in settings to the number in field 10 and then resets UDP.
SendToTray send the Ai program to the system tray.
SetFocus sets the Ai as focus and brings the Ai window to top using the script SetFocus.aut.
SetRQWeights used to set the RQ's. The numbers in field 11 sets the RQ's in order, look in settings for more.
ShowBadWords bad words from input are sent to the output.
ShowImage loads the image in the file field into the Image window another way of showing image without changing the Operation field to 3. Images are stored in the image folder.
ShowImageFP loads the image full path filename in file field into the Image window.
ShowSongName outputs the name of the song currently playing.
ShowSongNameFull outputs the full path filename of the song currently playing.
ShowStatsOff turns of statistics display in Image window.
ShowStatsOn turns on statistics display in Image window.
ShowSubject sends the subject description to the output.
ShowSum show the maths result cell 818 field 8 is put in front of the answer.
SixPClean resets in cell fields 5 and 6 to 0. These are the fields that 6p learning sets up.
SixPLearnOn turns on 6P learning each timer loop, this means learning can be done when the Ai is idle and means inputs are processed at the normal speed.
SixPLearnOff turns off 6P learning each timer loop.
SortFile sorts the file in the file field into another file with the same name but with an x added to the filename extension.
Words in the read file are joined together so new lines of text are of a similar length.
If CheckWords is in field 11 then the words are checked for in the BD and only know words are written to the file.
If ExcludeWords is in field 11 then if the contents of field 7, 8 or 10 are in the line of text then the line is omitted from the output file. This is useful if random bits of web code get through the filtering process.
SoundToOn turn on sound to light, uses the analogue input from the k8055 card then sends signals to DMX channels 1 to 3, this causes the Ai to run at about 50% processing power. inputting something into the Ai stops the process.
SoundToOff turns off sound to light.
srfon turns on SR filter
srfoff turns off SR filter
StartTimer starts the main timer.
STFile the word in field 7 is searched for in the filename in the file field.
StopDownload stops file download.
StopNetwork switches off file reads.
StopSong stops a song started with the PlaySong or PlayPlaylist keyword
StopSongAtNext stops at the end of the track playing.
StopTimer stops main program timer.
System file field is the program to run, field 10 is the extra command to send to the program being run.
UDPf8f9Send sends via UDP field 8 using the code in the file field as opposed to using entry 809 BD which is the default UDP entry.
This is also used when sending remote BC activation, eg. field 8 = in:000001111 ac:2376 f9=pw:1234do:o-o
where 1234 is the password of the remote ai and o-o tells the receiving Ai what to do with the information. The IP number and en: is added to the end of he packet by the program . The receiving Ai also looks for the keywords ac: and in:, ac:=activate cell, in:=input code. If there is no input code then the cells input code is used.
UDPf8f9SendForce if f8 is empty then the output is used
UDPRestart restarts the UDP connection.
UpdateSettings reloads the settings file.
UpDateBrain updates the Brain from a text file. The file in the file field is used, if empty then the file used is NewBrainData.txt in the data folder. The button New Data adds the cells data to the NewBrainData.txt this is used for moving data from one Ai to another.
USBd1d2noadd nothing added to usb button counter input
USBd1d2add01 adds number if not 0 to usb button counter input.
USBd1d2add02 adds number if not 0 to usb button counter input.
USBd1d2add03 adds number if not 0 to usb button counter input.
USBd1d2add04 adds number if not 0 to usb button counter input.
USBd1d2add05 adds number if not 0 to usb button counter input.
USBOn turns on USB.
USBOff turns off USB K8055 card.
WriteInputFile writes the input to the file in the file field, field 10 is added to the input.
WriteOutputFile writes the output to the file in file field, puts the contents of field 8 in front of the output then the contents of field 10 after the output. If the output variable ToPrint hasn't been set by the time this Keyword is invoked then there will be no output.
Example to write a vbs script to speak the output, after the script has been written the script is run using the keyword system. The cell 1178 is activated at the SayPrint routine when the output is being sent to various places.
The file name in the file field needs to point to a existing folder and must have the extension .vbs
the tag <activate cell:1234> can be any cell that has the same contents
cell 1178
field contents
tags <keyword-ifa><activate cell:1234>
file ...\Talk.vbs
keyword writeoutputfile
field 8 Set Sapi=CreateObject("sapi.spvoice"):sapi.speak "
field 10 "
cell 1234
field contents
tags <keyword-ifa>
file ...\Talk.vbs
keyword system
WriteToFile puts the contents of field 8 into the file field.
WSB output filters
wsb8ToInput
wsb8ToOutput
wsbAll allows all WSB outputs to be used.
wsbResistance resistance words used for WSB output.
wsbVarience resistance variance words used for WSB output.
wsbWave wave words used for WSB output.
wsbHide hide WSB window.
wsbShow show WSB window.