home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 3 Comm / 03-Comm.zip / hab4_d1.zip / HAOS2D.Z / IBM.CMD < prev    next >
OS/2 REXX Batch file  |  1995-08-10  |  3KB  |  77 lines

  1. /* A REXX script MUST begin with a commented line              */
  2. /* Text within slashes and asterisks (like this line) are comments.      */
  3.  
  4. /*    $Revision: 1.3 $  */
  5. /*    $Date: 1995/08/09 17:00:05 $  */
  6.  
  7. /* This program ibm.cmd, created by Hilgraeve and assigned to the      */
  8. /* IBM National Support BBS phonebook entry runs an automated logon script */
  9. /* for connecting to the IBM National Support BBS. */
  10.  
  11. /* Parse the command line for arguments passed to this program */
  12. PARSE ARG pipename
  13.  
  14. /* Register external functions with REXX */
  15. CALL RxFuncAdd 'haLoadFuncs', 'HA_AUTO', 'RxhaLoadFuncs'
  16. CALL haLoadFuncs
  17.  
  18. /* Establish a link between this script program and HyperACCESS */
  19. scripthandle = haInitialize(1, pipename)
  20. DROP pipename
  21.  
  22. /* Process only if link with HyperACCESS was successful */
  23. IF scripthandle <> 0 THEN
  24.     DO
  25.     /* Initialize useful variables */
  26.     cr  = '0D'x        /* This is the hex value for carriage return */
  27.     lf  = '0A'x        /* This is the hex value for line feed         */
  28.     nul = '00'x        /* This is the hex value for null             */
  29.  
  30.     returnvalue = 0
  31.  
  32.     /* Wait for the name prompt */
  33.     IF returnvalue >= 0 THEN
  34.         returnvalue = haWaitForPrompt(scripthandle, 1, '-> ', 300, 19000)
  35.  
  36.     /* Grab the user name from the Runtime Values dialog */
  37.     IF returnvalue >= 0 THEN
  38.         returnvalue = haGetRuntimeValue(scripthandle, 1, 1, 128, 'szName')
  39.  
  40.     /* Type the user name in */
  41.     IF returnvalue >= 0 THEN
  42.         haTypeText(scriptHandle, 0, szName || cr)
  43.  
  44.     /* Wait for the password or new user prompt */
  45.     IF returnvalue >= 0 THEN
  46.         returnvalue = haWaitForPrompt(scripthandle, 2, '>'||'1B'x'[33;1m'nul', [N]o? 'nul, 300, 120000)
  47.  
  48.     /* If we get the first prompt, this means this person is already a user
  49.        on IBM's BBS.  We'll query their password setting and log them in,
  50.        otherwise, this person will need to provide some additional information
  51.        that we cannot answer with the script */
  52.     IF returnvalue == 0 THEN
  53.         DO
  54.         /* Grab the password from the Runtime Values dialog */
  55.         returnvalue = haGetRuntimeValue(scripthandle, 3, 1, 128, 'szPassword')
  56.  
  57.         /* Type the password in */
  58.         IF returnvalue >= 0 THEN
  59.             returnvalue = haTypeText(scripthandle, 0, szPassword || cr)
  60.  
  61.         /* Wait for the continue prompt and hit carriage return */
  62.         IF returnvalue >= 0 THEN
  63.             returnvalue = haWaitForPrompt(scripthandle, 1, 'ntinue? ', 300, 16000)
  64.         IF returnvalue >= 0 THEN
  65.             returnvalue = haTypeText(scripthandle, 0, cr)
  66.         END
  67.     ELSE
  68.         /* Inform this person that they are a new user and must login manually */
  69.         haMessageBox(scripthandle, "IBM National Support BBS", "You are a new user to IBM's BBS, please continue to login manually",0, nul, 2)
  70.     
  71.     /* Terminate link between HyperACCESS and script program */
  72.     CALL haTerminate scripthandle
  73.     END
  74.  
  75. DROP scripthandle
  76. CALL haDropFuncs
  77.