DoorControl-CGI/doorcontrol-main.test

58 lines
1.0 KiB
Bash
Executable File

#!/bin/bash
# Initialize
PASSWD_FILE="/usr/local/www/cgi-bin/passwd"
QUERY_STRING=$1
LOCKFILE="./doorcontrol-main.lock"
. parse_query_string.sh
#
# Exit if instance already running
if [ -e "$LOCKFILE" ]; then
exit 1
else
touch "$LOCKFILE"
fi
#echo "Content-type: text/html"
#echo
#echo "<html>"
# Check password
read passwd <"${PASSWD_FILE}"
if [ "${param[passwd]}" != "${passwd}" ]; then
echo "Password Incorrect: ${param[passwd]}"
echo "$QUERY_STRING"
rm "$LOCKFILE"
exit 1
fi
LABEL_FILE=$(grep -l pcf8574a /sys/class/gpio/*/*label)
BASE_FILE="$(dirname $LABEL_FILE)/base"
BASE=$(cat $BASE_FILE)
for (( i=0; i<=7; i=i+1 )); do
PIN[$i]=$(($BASE+$i))
done
if [ ! -e "/sys/class/gpio/gpio${PIN[7]}/value" ]; then
echo "${PIN[7]}" > /sys/class/gpio/export
fi
#echo "<p>Waiting ...</p>"
#sleep ${param[delay]}
#echo "out" > /sys/class/gpio/gpio${PIN[7]}/direction
#echo "0" > /sys/class/gpio/gpio${PIN[7]}/value
sleep 2
#echo "1" > /sys/class/gpio/gpio${PIN[7]}/value
#echo "<p>Unlocked</p>"
#echo "</html>"
rm "$LOCKFILE"