#!/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