home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 18 REXX / 18-REXX.zip / rxcomm16.zip / samples / rxcDrop.cmd < prev    next >
OS/2 REXX Batch file  |  1999-02-09  |  1KB  |  53 lines

  1. /**
  2.  * REXX Communication Control Function Library  Ver.1.1
  3.  *                  copyright 1998, Naga(Kazuo Adachi)
  4.  *                          mailto:nagaw@ibm.net
  5.  *                          mailto:GDB00421@nifty.ne.jp
  6.  *
  7.  * $Id$
  8.  *
  9.  * $Log$
  10.  */
  11.  
  12. CALL RxFuncAdd 'RxCommLoadFuncs','RxComm','RxCommLoadFuncs'
  13. CALL RxCommLoadFuncs
  14.  
  15. /*--------------------------------------------------------*/
  16. /**
  17.  * Drop Modem Signal(Line)
  18.  */
  19. lineDTR = 'OFF'
  20. lineRTS = ''
  21. waitDCD = 5
  22.  
  23. rc = RxCommSignal( lineDTR, lineRTS )
  24.  
  25. /**
  26.  * Wait for drop DCD or 'NO CARRIER'
  27.  */
  28. chkDCD = TIME('R')
  29. DO UNTIL POS( 'OK'        , rc ) = 1 |,
  30.          POS( 'NO CARRIER', rc ) = 1
  31.     rc = RxCommRead()
  32.     CALL CHAROUT , rc
  33.  
  34.     IF POS( 'DCD', RxCommSignal() ) = 0 THEN LEAVE
  35.  
  36.     IF TIME('E') - chkDCD > waitDCD THEN
  37.     DO
  38.         /**
  39.          * Manualy Hangup Line
  40.          */
  41.         ok = RxCommWrite( '+++' )
  42.         DO UNTIL POS( 'OK', rc ) = 1
  43.             rc = RxCommRead()
  44.             CALL CHAROUT , rc
  45.         END
  46.         ok = RxCommWrite( 'ATH' || '0D'x )
  47.  
  48.         chkDCD = TIME('R')
  49.     END
  50. END
  51.  
  52. RETURN
  53.