home *** CD-ROM | disk | FTP | other *** search
-
- ONERROR:<comment>
- -----------------
-
- Purpose: Allows a single jump to be made in the script.
-
- Use: If a timeout occurs in the program when it is waiting for a certain
- character sequence or cannot output any more characters, then when the time
- previously specified in the DELAY: command has ellapsed, a timeout will
- occur. If no ONERROR: command has been used and a timeout occurs then the
- script will finish. If an ONERROR: command has been used, execution of the
- next command after the ONERROR will occur, ie a jump will be made.
-
- Use of this command can allow a script to exit cleanly, if for instance the
- link to the BBS fails, the ONERROR: command can then be followed by script to
- disconnect and put the TNC in a defined state.
-
- The commands than can cause a timeout error are:-
-
- TYPE: if the serial buffer remains full and does not empty.
- UPLOAD: if the serial buffer remains full and does not empty.
- WAITFOR: if the specified string is not received.
- SCANLIST: if any line takes longer than the delay set.
- READ: if it takes longer than <delay> seconds to read a whole message.
-
- Only one ONERROR: command can be used in each script. If more than one is
- present, only the last one will be recognised.
-
- If there is not a FINISH: command before the ONERROR: command then execution
- of the script with no timeout occuring will continue on past it as though it
- were not there.
-
- Examples: ONERROR: The script will jump to here if a timeout occurs
-
- Related commands: TYPE: WAITFOR: SCANLIST: READ: (if a timeout occurs)
-
-
- SAVELIST:<comment>
- ------------------
-
- Purpose: Forces the program to save the message list to a file called "List".
-
- Use: Normally placed at the start of the script program but only has an
- effect if a SCANLIST command is used. The saved list is put in the ComLink
- application's download directory, called "List" or in !ComMail.
-
- Examples: SAVELIST: This command turns on the "save list" feature.
-
- Related commands: SCANLIST:
-
-
- ENDLIST:<text>
- --------------
- ******************** IMPORTANT ***********************
- This command is no longer supported. This command must be deleted from old
- scripts along with any WAITFOR: command after a SCANLIST: since the SCANLIST:
- command now finishes having seen a prompt.
- *********************************************************
-
- BREAK:<comment>
- -----------------
-
- Purpose: Sends a 50 millisecond "break" to the TNC.
-
- Use: Use this command to force the TNC out of transparent mode.
-
- Examples: BREAK:
-
- Related commands: None
-
-
- REPORT:<comment>
- ----------------
-
- Purpose: Pops up a status window.
-
- Use: Useful to force the status window to appear. A status window can be
- popped up at any time by using the menu option.
-
- Examples: REPORT:
-
- Related commands: None
-
-
- Command: MONITOR:<text>
- -----------------------
-
- Purpose: Allows incoming text to be displayed in the bottom of the status
- window.
-
- Use: The <text> can be ON or OFF. When ON, the status window will be updated
- whenever new text arrives at the serial port. When OFF, the incomming text
- is not displayed or updated. The comand can be used at any point in the
- program, typically during script program testing it would be used at the
- beginning of the script. The ON/OFF text must be in upper case.
-
- The status window is not popped up automatically by this command, but may
- be either manually popped up using the ComLink menu, or, may be popped up
- using the REPORT: command.
-
- Example: MONITOR:ON
-
- Related commands: REPORT:
-
-
- Command: DIRUP:<text>
- ---------------------
-
- Purpose: Sets the upload directory for text files.
-
- Use: The command allows the upload directory to be specified. If a script is
- run and the command UPLOAD: used, then any files in the specified directory
- will be sent to the serial port. If the command is not used in the script
- then the default directory used will be For_Upload within the ComLink
- application.
-
- The directory specified must exist. System variables may be used in <> or {}
- brackets.
-
- If this command is not used in a script, uploaded files will be taken from
- the default directory "For_Upload" in the !ComLink application.
-
- The command may be used more then once if files from several directories
- are to be sent, in this case, use it before each UPLOAD: command.
-
- See the section on ComMail near the end if this manual.
-
- Example: DIRUP:RAM:$.ToSend
-
- Related commands: UPLOAD:
-
-
- Command: DIRDOWN:<text>
- ---------------------
-
- Purpose: Sets the download directory for recieved text files.
-
- Use: The command allows the download directory to be specified. If a script
- is run and the commands SCANLIST: or READ: used, then any text received will
- be saved in the specified directory. If the command is not used in the
- script then the default directory used will be Download within the ComLink
- application.
-
- The directory specified must exist. System variables may be used in <> or {}
- brackets.
-
- If this command is not used in a script, downloaded files will be placed in
- the default directory "Download" in the !ComLink application.
-
- The command may be used more then once if files are to be saved in several
- directories, in this case, use it before each SCANLIST: or READ: command.
-
- See the section on ComMail near the end if this manual.
-
- Example: SAVELIST:
- DIRDOWN:RAM:$.Lists
- SCANLIST:ARCHIM:G7ALN
- DIRDOWN:adfs::BBS_files.$.ReadFiles
- READ:
-
- Related commands: SCANLIST: READ: DIRUP: SAVELIST:
-
-
- Command: FILESCAN:<text>
- ------------------------
-
- Purpose: Scans a specified file for marked message numbers, susequently these
- may be read/killed using the READ:/KILL: commands. Also sets a system
- variable "OldList$Num".
-
- Use: Allows an old "List" file to be scanned for numbers to be read or
- killed. The command causes the file to be examined, if the 6 th character of
- any line is a "+", then the five characters before it are assumed to be a
- message number. That message number will be read later if the READ: command
- is used, the messages that are marked will be saved in the download
- directory in a file called "-General-". If the sixth character is a "-"
- then that message will be "killed" if the KILL: command is subsequently used.
-
- The command also sets a system variable "OldList$Num" which can be used
- in the TYPE: command. The number taken is the first one seen in the file.
- This is particularly useful for BBSs that need you to specify the last
- listed message. Use:-
-
- TYPE:L {OldList$Num}
-
- The command may be used on its own before READ:/KILL: commands, or before a
- SCANLIST: command. If used before a SCANLIST:, both sets of messages will be
- read, ie those marked in the FILESCAN: command and those meeting the
- criteria specified in the SCANLIST:. Only messages which have been marked
- with a "-" will be killed when KILL: is invoked.
-
- The <text> in the SCANLIST command should be a valid filepath.
-
- An efficient way to use the command is to point to a previously downloaded
- list from a BBS/PMS, in which you have marked the messages to be read. The
- message list can be marked using !Edit, simply put a + after the message
- number. Eg. in the following example list, message 23456 is marked:-
-
- MsgNo TS Size To At From Date Subject
- 46824+ B$ 443 ARCHIM GB7BNM G6DEN 17-Mar ComLink
- 46813 BN 926 SATTV GBR G8XZD 17-Mar Sendz LNB\Mod for Telecom Band
- 46802- B$ 807 ALL GBR G7ALN 17-Mar What is VT220 please.
-
- Any text after the 6th character in a line will be ignored, so you don't
- need to remove anything from a BBS list. Of course you can always create a
- list of messages to be read yourself. Just make sure the 6th character is a
- "+". Eg. the file could contain:-
-
- 1245 +
- 23 +
- 34-
-
- Note that spaces are ignored.
-
- Remember that ComLink can save a message list with filename "List" in the
- download directory. I normally rename this file to "List+" and then mark the
- messages I want to be read the next time the relevant ComLink script is run.
- (Why put a plus on the end? Because the + is right next to the Enter key
- on the numeric keypad, so it is convenient!)
-
- Once ComLink has performed a FILESCAN: on the specified file, the file is
- renamed with a + at the begining, this ensures that if ComLink is run again,
- the same messages will not be read!
-
-
- Example: FILESCAN:adfs::Disc_1.$.!ComLink.Download.List+
-
- System variables may be used as part of the file path and may be enclosed
- in <> or {} brackets.
-
- eg FILESCAN:{ComLink$Dir}.Download.List+
-
-
- OSCLI:<text>
- -----------------
-
- Purpose: Executes a * command.
-
- Use: Allows command line commands to be executed within the script. In one
- of the example script programs the command is used to open directory
- windows. System variables such as ComLink$Dir may be used BUT MUST be
- enclosed in curly brackets, eg {ComLink$Dir}. ComLink will then substitute
- the appropriate string before passing to the CLI. I found this was necessary
- since some CLI commands dont like system variables in the normal <>
- brackets.
-
- Example: OSCLI:Filer_OpenDir {ComLink$Dir}.Download
- OSCLI:sound 1 340 200 6
-
- Nb. {} BRACKETS MUST BE USED AROUND SYSTEM VARIABLES.
-
- Related commands: None
-
-
- APPEND:<text>
- -----------------
-
- Purpose: Adds some text to the end of an upload file.
-
- Use: The <text> will be sent at the end of each upload file. The upload file
- must NOT contain the end of message code, eg /ex or CTRL/Z, these MUST be
- put at the end of the APPEND: command.
-
-
- Note the /ex must be sent as a separate line, hence the carraige return
- codes [13] in the example below.
-
- System variables may be added to date the file etc, they must be put in {}
- brackets as shown in the example.
-
- More than one APPEND: command can be used, the text strings will all be
- "added" to form one string. This gets around the limitation that the
- script command lines must be less than 100 characters long.
-
- The total length of the appended string must not be more than 255 characters
- after system variables have been expanded.
-
- Examples:
-
- APPEND:73 de Alan (G7ALN @ GB7IMB)
- APPEND: *** Sent on {sys$date} {sys$year} at {sys$time} ***[13]/ex[13]
-
-
- Related commands: UPLOAD:
-
-
- KILL:<text>
- -----------------
-
- Purpose: Kills messages.
-
- Use: Messages in a list can be marked with a "-" and a FILESCAN: performed.
- If a KILL: command is used later, then the marked messages will be deleted.
- The <text> must be the BBS or PMS kill command, for a PMS it is usually
- "Kill" but for a BBS "K".
-
- Note: On a BBS it is best to kill "read" messages to you, using the "KM" BBS
- command. eg.
-
- TYPE:KM
- WAITFOR:Alan >[13]
-
- *** IMPORTANT *** If both FILESCAN: and SCANLIST: commands are used in a
- script, the FILESCAN: must come first.
-
-
- Examples: KILL:Kill
- KILL:K
-
- Related commands: FILESCAN:
-
-
- DAYTIME:<text>
- -------------
-
- Purpose: Sets the TNC clock.
-
- Use: The <text> must be either 10 or 12. The number sets the length of
- the time command string to be sent to the TNC. If it is 10 then the string
- sent will be of the form:-
-
- DA yymmddhhmm
-
- Where yy=year, mm=month, dd=day, hh=hour and mm=minutes
-
- If the number is 12 then the string sent to the TNC will also include
- seconds:-
-
- DA yymmddhhmmss
-
- Use the number that is appropriate to you TNC. Of course the TNC must be
- in command mode to accept the time, so position the command appropriately!
-
- Example: DAYTIME:10
-
- Related commands: None
-
- FLUSH:<text>
- ------------
-
- Purpose: Allows the serial input buffer to be flushed.
-
- Use: This command is handy if you are not interested in what is coming from
- your TNC. When ON the command causes the input buffer to be repeatedly
- flushed during the execution of the script, this ensures the input buffer
- in the archimedes does not become full and stop the TNC operating.
-
- In general this command is only useful when ComLink is conversing directly
- with the TNC, ie when no connection has been made. The command has a built
- in side effect, a delay is introduced before each line of text is sent to
- the TNC. I found that this was neccessary as it is possible to "overload"
- my TNC with commands otherwise, and it just "freezes" on me.
-
- A typical use would be when you are setting lots of TNC options and don't
- want to wait for the "cmd:" prompt after every one.
-
- The text must be "ON" or "OFF". You must be careful with this command and
- remember to switch it OFF before the script needs input again.
-
- Example:
-
- FLUSH:ON
- TYPE:CONMODE CONV
- ....
- ....
- TYPE:ECHO OFF
- FLUSH:OFF
-
- Related commands: None
-
- TRYAFTER:<number> LOOPIF:<text> and UNTIL:<text>
- ------------------------------------------------
-
- Purpose: Allows loops conditional on the text received.
-
- Use: Typically used to check if the BBS is busy and try again later if it
- is. These commands to setup a conditional loop.
-
- The LOOPIF: command specifies the text which will cause a loop back from the
- UNTIL: command. A pause equal to the TRYAFTER: value will be made on each
- loop back. The text specified in the UNTIL: command, when seen will allow
- the script to continue with the following command. No delay is made on the
- first pass through the loop, only when a loopback is made.
-
- Choose the text by looking at the BBS output when it is busy. GB7IMB sends
- *** IMBBBS busy
- so I can specify all or part of this in the LOOPIF: command. When a
- successful connection is made I get back the prompt, so I can use
- Alan > as the text in the UNTIL: command. Wildcards are NOT allowed!
-
- In the example below the TRYAFTER: command defines a 360 second (6 minute)
- pause on loop back. A connection to the BBS will be attempted and the
- text "Alan >" OR "busy" waited for. If "Alan >" is received the script will
- continue with TYPE:L but if "busy" is seen then the next script command
- executed will be LOOPIF: again and a pause of 6 minutes made.
-
- The last used DELAY: command sets the timeout limit to see one of the text
- strings (in the example "busy" or "Alan >") while the UNTIL: command is
- executing.
-
- There is no limit to the number of loop backs! More than one loop can
- be setup in the script but you can't have nested loops.
-
- Examples: TRYAFTER:360
- LOOPIF:busy
- TYPE:C IMBBBS
- UNTIL:Alan >
- TYPE:L
-
- Related commands: DELAY:
-
-
-
-
- !ComMail for setting the upload and download directory paths.
- ------------------------------------------------------------
-
- !ComMail provides an easy way of setting your upload and download paths.
-
- A !ComMail directory has been added which allows the path of upload and
- download to be set easily. Simply put the !ComMail directory where you like
- on floppy, in RAM drive etc. Double click on the !ComMail directory to be
- used for upload and download. A system variable ComMail$Dir will be set to
- point to the selected directory. This can be used in your scripts, eg :-
-
- DIRDOWN:{ComMail$Dir}.From_BBS
- DIRUP:{ComMail$Dir}.To_BBS
- OSCLI:Filer_OpenDir {ComMail$Dir}.From_BBS
-
- You can create your own directories within !ComMail, put them in the
- !ComMail.Mail directory. Double clicking on the !ComMail icon automatically
- opens this directory for you.
-
-
- PROBLEMS?
- =========
-
- I hope you have the time to write a script file or to adapt one I have
- provided. The time you save by not having to sit at the keyboard to get
- messages from the BBS is time you can use more usefully. (If you are married
- perhaps your wife will see more of you!)
-
- The programs supplied are not guaranteed to be free of bugs. The usual
- disclaimers apply, don't blame me if use of the programs causes loss of any
- data or any other type of damage!
-
- Do contact me via packet if you have any problems or have any suggestions
- regarding possible improvements. I'll try to help.
-