From: "Adi Nugroho" <[EMAIL PROTECTED]>
> On Tuesday 10 August 2004 12:43, Arief Yudhawarman wrote:
> > Yang menjadi masalah adalah
> > bagaimana caranya diskonek ? Koneksinya pakai wvdial,
>
> killall wvdial :-)
Thanks.
Kalau itu saya ngerti Mas. Pertanyaan pertama saya adalah bagaimana
caranya diskonek yg koneksi ke internetnya dilakukan secara otomatis
per time basis. Berarti perintah di atas harus dilakukan secara manual
dong. Kudu tahu fetchmail sudah lancar ambil semua email, email
di queue sudah dilemparkan semuanya ke mail relayer.
> > idle n Specifies that pppd should disconnect if the link is idle for
n
> > seconds.
>
> Wah, rugi....
> Berarti kita buang pulsa hanya untuk nunggu idle :D
Ya, itulah satu-satunya cara yg sementara ini baru terpikir oleh saya.
Lagipula kadang-kadang koneksi pakai telkomnet instan ini, tidak serta
merta langsung up ke internet, melainkan memble sekian puluh detik.
Oya, tadi sudah berhasil koneksi terputus dg sendirinya setelah idle
sekian detik.
# cat /etc/ppp/peers/wvdial
name wvdial
idle 15 # diskonek jika idle 15 detik
disconnect /usr/local/bin/disconnect # kalau begini, akan reconnect
# cat /usr/local/bin/instan-on
if [ ! -z `/sbin/pidof wvdial` ]
then
typeKoneksi="Instan"
echo "Connection is already established with $typeKoneksi. "
echo ""
else
echo "Preparing connection to instan ... "
echo "Wait until Connected !"
echo
echo instan > /tmp/ppp.txt
/usr/bin/wvdial Instan > /dev/null 2>&1 &
true=y
while [ "$true" = "y" ]
do
if /sbin/route -n | grep '^0.0.0.0' > /dev/null
then
echo "Connected !"
exit
fi
sleep 1
done
fi
# cat /usr/local/bin/disconnect
/bin/kill -TERM `/sbin/pidof wvdial`
Alternatif lain adalah membuat script koneksi yg jadi satu dg jobnya
fetchmail dan sendmail.
# cat konek.sh
/usr/local/bin/instan-on
fetchmail -f .fetchmailrc -v --all
sendmail -q
/usr/local/bin/disconnect
Yang menjadi pertanyaan adalah agar job itu dijalankan satu demi satu
setelah satu job selesai dilakukan. Untuk job fetchmail bisa diatur
tidak jalan di background namun untuk job sendmail agak susah,
karena sesuai man sendmail: "Mail delivery always happens in the
background".
Jadi kalau perintah ini diekseskusi "sendmail -q", sessionnya akan
jalan di background, akibatnya perintah berikutnya akan dieksekusi:
/usr/local/bin/disconnect
Akibatnya server tidak akan pernah kirim email :-(
Rekan-rekan postfix mungkin tahu caranya nyisipkan eksekusi script
tertentu setelah email keluar sukses dikirim semua ?
TIA
-- yudi