|
|
1.1 root 1: #!xchat
2: # @(#) Hangup.Hayes V1.1 Tue Sep 1 14:04:25 1992 (Bob Denny)
3: #
4: # xchat script for hanging up a Hayes-type modem. When used with Taylor
5: # UUCP, this script should be run as the dialer-complete and dialer-abort
6: # script with xchat.
7: #
8: # Usage:
9: # xchat Hangup.Hayes [ x ]
10: #
11: # where 'x' is any string. If it is present, this script will log the
12: # modem reset as an ABORT reset, otherwise it will not log anything.
13: #
14: # Uncomment the lines starting with '###' to get debugging log.
15: #
16: start:
17: ### dbgfile Hangup.Log
18: ### dbgset 15
19: zero
20: sleep 2000 # Wait for trailing garbage
21: flush # Toss it out
22: ifnstr wakemodem 0 # No abort indicator
23: log Hangup on abort
24: #
25: # Get modem's attention via Hayes 'escape' protocol.
26: #
27: wakemodem:
28: sleep 4000
29: send +++
30: sleep 4000
31: send \r
32: timeout reset 2000
33: expect reset OK
34: #
35: # We're (probably) in command mode. Use ATZ (reset) to hang up
36: # as some modems don't behave well with ATH0 command.
37: #
38: reset:
39: send ATZ\r
40: timeout silent 5000
41: expect done OK
42: #
43: # Finished, modem is back in initial state.
44: #
45: done:
46: success
47: #
48: # No response to escape protocol. Log the error and force DTR low
49: # in an attempt to get control of the modem. Then send ATZ just to
50: # make sure.
51: #
52: silent:
53: logerr Hangup: no response from modem
54: hangup # Force DTR low as last gasp
55: send ATZ\r
56: sleep 5000
57: failed
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.