TIP: Click on subject to list as thread! ANSI
echo: qmodem_user
to: DARRIN HIGGINS
from: GARY WHITLOCK
date: 1995-10-29 20:46:00
subject: QMPro Scripting.

DH*I would like some assistance in regards to scripting with QModem Pro
 *for DOS, version 1.53.
DH*I would like a list of the commands available for use in a SCRIPT
 *file.  In particular, I would like to know if there is an "IF, THEN"
 *statement available that would allow me to check for the existence of
 *a file.  It would also be helpful if I could execute the DOS Delete
 *command through a script.
DH*My reasons are this:  I use BlueWave 2.20, and on many boards, I do
 *not use the QWK packet system, which is the only QMPro recognizes.
 *It's flags are useless to me, because it is not aware that a BlueWave
 *packet exists to be uploaded.  Further, I like to call all of my
 *favorite boards, (not just the ones that have outgoing mail ready), so
 *the [S]end mail command is useless to me for that reason too.
DH*As you can guess, I would like to set up scripts for all the BBS's I
 *frequent, but have the SCRIPT detect mail packets that should be
 *uploaded so that it can execute an appropriate procedure.
DH*Any help would be appreciated!  Thank you!
Here are a few:
$DATE - system date $TIME - system time
$DLPATH - download path as specified in Configuration
$ULPATH - upload path as specified in Configuration
$SCPATH - script directory path in Configuration
$QWKPATH - qwk path              "   "
$PASSWORD - password field
$PACKET - contains the name of the packet for the connected entry
CAPTURE - open a file to capture all terminal I/O
DOWNLOAD - download protocol filename [ascii options]
       DOWNLOAD z qm42sst.zip  ;download with Zmodem and put in current
                               ;dir
EXIST - conditional branch
       EXIST filename LABEL ; if FILENAME is found the script will jump
               ;to the location in LABEL. Can be used with $SUCCESS and
               ;the jump using the LABEL will occur. Can be used with
               ;$FAIL if no matches the script execution will continue
               ;with the next sequential statement.
GOSUB - call a subroutine at a specified LABEL
       GOSUB SUB1      ;call the SUB1 subroutine
       EXIT            ;end the script
       SUB1:           ;the subroutine SUB1
       ----            ;script commands
       RETURN          ;end of subroutine and branch back to EXIT
                               ;statement
GOTO - unconditional branch to a LABEL in the script
       GOTO SUB1       ;jump to sub1
       BACKHERE:       ;label
       EXIT            ;end the script
       SUB1:           ;the subroutine sub1
       ----            ;script commands
       GOTO BACKHERE   ;end of subroutine. go back up
HANGUP - return modem on Hook
IF - conditional branch based on the result of a test
       IF CONDITION LABEL
       IF $ONLINE SkipDial     ;go around dial if ONLINE
       DIAL "1"                ;dial if offline
       SkipDial:               ;continue...
       S1:                     ;a label
       DOWNLOAD X TEXT.DOC     ;download a file
       IF $FAIL S1             ;if failed, go S1 and try again
DELETEF - delete a file
       DELETEF c:\temp\*.zip   ;delete all matching
       DELETEF $QWKPATH$PACKET.REP     ;delete REP packet
UPLOAD
       UPLOAD PROTOCOL FILENAME [ASCII OPTION...]
       UPLOAD $QWKPATH$PACKET.REP
WAITFOR - a specific string to be received
       WAITFOR "Main Menu"
WHEN -  used before a waitfor
       WHEN "What is your first name?" "John Doe^M"
               ;sends your name and a return when quoted string is
               ;received
       WHEN "What is your password?" "xxxxxx^M"
This is not all the commands but should help to get you started. I will
include a script I use in the next message.
                              W*nd*r**r
                         Every day is a gift.
_____________________________________________________________________________
* LAKOTA v1.4
--- Alexi/Mail 2.02b (#10000)
---------------
* Origin: Bird House BBS is flying 502-351-2473(BIRD) (1:2450/60)

SOURCE: echomail via exec-pc

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.