Listing 1 - /usr/local/bin/numpager
Next line starts 1st line of actual file.
#!/bin/sh
#
#  Program:    numpager
#  Author:     Mark J. McDonagh
#  Version:    1.1 
#  Date:       07/10/94
#  owner = root, group = adm, permissions = -rwxr-xr-x
# 
#  Description:    
#
#    This script allows users to send a numeric page to a pre-defined
#  group of people based on a lookup table of names and pager numbers.
#
#    This script was primarily written as a system monitoring tool, but
#  can also be used as an automated way to page users, systems staff,
#  sales staff, etc.
#
#    The script looks for 2 parameters, 1st the name of the person that
#  the page is being sent to and 2nd the numeric message whether it is an
#  error code from a script the system is monitoring or if it is a phone
#  number of the person placing the page so that the recipient can call 
#  them back.
#
#  Files: .UNIX_ONCALL   name of person handling UNIX problems
#         .PC_ONCALL     name of person handling PC problems
#         .PAGER_LIST    list of names and pager numbers (seperate by
#                        tabs)
#
#  Variables:  UNIXSA    use as 1st parameter to page UNIX Administrator
#              PCSA      use as 1st parameter to page PC Administrator
#
#  Example:    numpager UNIXSA 001
#
#         This would call the UNIX on call person and display 001 as
#         the error code on his/her pager.
#
#  Example:    numpager mark 5551212
#
#         This would call mark and display 5551212 as
#         the phone number to call on his pager.
#
#
if [ "$#" -ne 2 ]
then
     echo "Incorrect number of arguments - needs 2 arguements as follows:"
     echo "Usage:  numpager    person to page    error code and/or phone # to
call"
     sleep 5
     exit 1
fi
PAGPERSON=$1
PAGERCODE=$2
PAGFILE="/usr/local/bin/.PAGER_LIST"
if [ "$1" = UNIXSA ] ; then
PAGPERSON=`cat /usr/local/bin/.UNIX_ONCALL`
fi
if [ "$1" = PCSA ] ; then
PAGPERSON=`cat /usr/local/bin/.PC_ONCALL`
fi
cat $PAGFILE | grep $PAGPERSON > /dev/null 2>&1
if [ "$?" = 0 ]
then
     PAGERNUM="`cat $PAGFILE | grep $PAGPERSON | awk '{print $2}'"
else
     echo "Unable to send Page to: $PAGPERSON" 
     echo "Name of Person to be Paged is not valid as listed."
     sleep 5
     exit 1
fi
expr $PAGERCODE + 1 > /dev/null 2>&1
if [ "$?" = 0 ]
then
STATUS="BAD"
while [ $STATUS = "BAD" ]
do
     #echo "~.\013" | cu -d -s2400 $PAGERNUM-----$PAGERCODE 
     echo "~.\013" | cu -s2400 $PAGERNUM-----$PAGERCODE > /dev/null 2>&1 
     if [ "$?" = 0 ]
     then STATUS="OK"
     else STATUS="BAD"; echo "Phone Line Busy - Re-trying."; sleep 15
     fi
done
else
     echo "Unable to send Page to: $PAGPERSON" 
     echo ""
     echo "Error Code and/or Phone Number to display MUST be"
     echo "Numeric only."
     sleep 5
     exit 1
fi
