| #!/bin/sh |
| ################################################################### |
| # |
| # These parameters control the attack dialing sequence. |
| # |
| # Maximum number of attempts to reach the telephone number(s) |
| MAX_ATTEMPTS=10 |
| |
| # Delay between each of the attempts. This is a parameter to sleep |
| # so use "15s" for 15 seconds, "1m" for 1 minute, etc. |
| SLEEP_DELAY=15s |
| |
| ################################################################### |
| # |
| # This is a list of telephone numbers. Add new numbers if you wish |
| # and see the function 'callall' below for the dial process. |
| PHONE1=555-1212 |
| PHONE2=411 |
| |
| ################################################################### |
| # |
| # If you use the ppp-on script, then these are passed to this routine |
| # automatically. There is no need to define them here. If not, then |
| # you will need to set the values. |
| # |
| ACCOUNT=my_account_name |
| PASSWORD=my_password |
| |
| ################################################################### |
| # |
| # Function to initialize the modem and ensure that it is in command |
| # state. This may not be needed, but it doesn't hurt. |
| # |
| function initialize |
| { |
| chat -v TIMEOUT 3 '' AT 'OK-+++\c-OK' |
| return |
| } |
| |
| ################################################################### |
| # |
| # Script to dial a telephone |
| # |
| function callnumber |
| { |
| chat -v \ |
| ABORT '\nBUSY\r' \ |
| ABORT '\nNO ANSWER\r' \ |
| ABORT '\nRINGING\r\n\r\nRINGING\r' \ |
| '' ATDT$1 \ |
| CONNECT '' \ |
| ogin:--ogin: $ACCOUNT \ |
| assword: $PASSWORD |
| # |
| # If the connection was successful then end the whole script with a |
| # success. |
| # |
| if [ "$?" = "0" ]; then |
| exit 0 |
| fi |
| |
| return |
| } |
| |
| ################################################################### |
| # |
| # Script to dial any telephone number |
| # |
| function callall |
| { |
| # echo "dialing attempt number: $1" >/dev/console |
| callnumber $PHONE1 |
| # callnumber $PHONE2 |
| } |
| |
| ################################################################### |
| # |
| # Initialize the modem to ensure that it is in the command state |
| # |
| initialize |
| if [ ! "$?" = "0" ]; then |
| exit 1 |
| fi |
| |
| # |
| # Dial telephone numbers until one answers |
| # |
| attempt=0 |
| while : ; do |
| attempt=`expr $attempt + 1` |
| callall $attempt |
| if [ "$attempt" = "$MAX_ATTEMPTS" ]; then |
| exit 1 |
| fi |
| sleep "$SLEEP_DELAY" |
| done |