Program na 'rizene' pripojeni k internetu
Petr Šobáň
soban na centrum.cz
Čtvrtek Červen 28 21:21:28 CEST 2001
Já mám jednoduše připojování řešené přes www server kde klepne na ikonku
připojit a uživatel se připojí - pokud není PC připojeno připojí se.
Po klepnutí na odpojit se odpojí a pokud jsou všichni odpojeni zavěsí se
modem.
A k tomu že se někdo neodpojí? Jednoduše mu ty impulzy naučtuji je to jeho
problém, u telefonu taky společnost nezajímá že jste sluchátko nepoložily.
/home/httpd/cgi-bin/pripojit
-----------------------------------
#!/bin/bash
/home/httpd/cgi-bin/prava > /dev/null
if [ $? -gt 0 ]
then
echo "Location: /cgi-bin/error"
echo
else
#vlastni pripojeni
if [ -e /tmp/*.internet.run ]
then
# jiz je nekdo pripojen
echo $REMOTE_ADDR > /tmp/$REMOTE_ADDR.internet.run
else
#neni nikdo pripojen
echo $REMOTE_ADDR > /tmp/$REMOTE_ADDR.internet.run
if [ ! -e /var/run/ppp?.pid ]
then
let DEN=$(date '+%w')
let HODINA=$(date '+%k')
if [ \( ! -e /tmp/modem.block -a \( \( $DEN -eq 0 -o $DEN -eq 6 \) -o \( $HODINA -ge 17 -o $HODINA -lt 7 \) \) \) ]
then
if [ ! -e /var/run/ppp?.pid ]
then
/sbin/ifup ppp0
# echo "zvedam modem"
fi
else
echo "Content-type: text/html"
echo "Pragma: no-cache"
echo "Cache-Control: no-cache"
echo
echo "Modem nelze připojit !!"
echo
echo "Bud je zakázáno připojeni, nebo neni čas 17:00 až 7:00 v pracovní den, nebo SOBOTA, NEDĚLE. <br>"
echo "Nebo je modem blokován <br>"
echo "Pokud si myslíte že je zde něco špatne kontaktujte správce - soban na centrum.cz"
rm -f /tmp/$REMOTE_ADDR.internet.run
exit 1
fi
fi
fi
# zapsat log
#date '+Připojeno v %d.%m.%Y %T' >> /var/log/modem/$REMOTE_ADDR
mysql -h internet -D internet -e "insert into pripojeni values ( $(date '+%s'), '"$REMOTE_ADDR"', '"$REMOTE_USER"', 'P', '"$(date '+%Y-%m-%d')"', '"$(date '+%T')"') ;"
sleep 1
echo "Pragma: no-cache"
echo "Cache-Control: no-cache"
echo "Location: /modem.php3"
echo
fi
/home/httpd/cgi-bin/odpojit
---------------------------------------
#!/bin/bash
/home/httpd/cgi-bin/prava > /dev/null
if [ $? -gt 0 ]
then
echo "Location: /cgi-bin/error"
echo
else
#vlastni odpojeni
if [ -e /tmp/$REMOTE_ADDR.internet.run ]
then
rm -f /tmp/$REMOTE_ADDR.internet.run
if [ ! -e /tmp/*.internet.run ]
then
/sbin/ifdown ppp0
# echo "Odpojuji modem" >> /var/log/debug.modem
fi
# zapsat log
# date '+Odpojeno v %d.%m.%Y %T' >> /var/log/modem/$REMOTE_ADDR
mysql -h internet -D internet -e "insert into pripojeni values ( $(date +%s), '"$REMOTE_ADDR"', '"$REMOTE_USER"', 'O', '"$(date +%Y-%m-%d)"', '"$(date +%T)"') ;"
sleep 1
fi
echo "Pragma: no-cache"
echo "Cache-Control: no-cache"
echo "Location: /modem.php3"
echo
fi
PS Omlouvám se za délku.
--
/----------------------------------------\
| Petr Šobáň |
| Ostrava |
|----------------------------------------|
| e-mail soban na centrum.cz |
\----------------------------------------/
---
Používám legální programy a ZADARMO !
viz http://www.linux.cz/zdarma-a-legalne
Další informace o konferenci Linux