6 Agu 2011

SHUTDOWN KOMPUTER DARI JAUH – DENGAN SMS

Kisah berikut ini adalah tentang Bunga (nama disamarkan.red) yang suka meninggalkan Komputernya dalam keadaan hidup. Hal ini dilakukannya karena kebiasaan Bunga yang suka mendownload film Box Office terbaru yang berukuran ratusan Mega dengan speed download 2KB/s (nekat). Jadi pengennya si bunga, kalo pas pulang di rumah, film yang didownloadnya udah selesai.

Pada suatu hari, Bunga sedang mendownload film “Crows Zero” (ne film bagus banget, sumpah!!). Persentase download sudah menunjukkan 95%, yang artinya 4 Jam lagi download-an selesai. Tiba-tiba Bunga mendapat panggilan dari Bos-nya untuk memperbaiki saluran air yang mampet dirumahnya. Seperti kebiasaannya, komputer tetap dinyalakannya biar nanti pas pulang Film yang didownloadnya udah selesai. Setelah 3 Jam dirumah bos, akhirnya selesailah pekerjaannya.

“Tapi masih ada 1 Jam lagi” pikir si Bunga didalam hati, “Jalan-jalan dulu ah, biar ntar sampe rumah udah selesai film yang aku download”. Lalu Bunga pun melanjutkan perjalannya ke Warkop beli rokok Surya 16 sambil ngopi-ngopi gitu. 3 Jam berlalu, (maaf, Bunga ini sebenarnya berjenis kelamin laki-laki), dia teringat file yang di downloadnya (dan dia juga teringat kalo dia gak bawa duit buat ngopi). So, dia harus menambah 3 Jam lagi untuk mencuci piring di Warkop. :p

“Wah, komputerku pasti udah selesai ngedownload neh”, yarp, lalu Bunga mengambil HP nya dan mulai mengetikkan SMS dengan pesan “SHUTDOWN”. Dan dirumahnya, komputer Bunga telah mati secara otomatis, dan Bunga pun melanjutkan pekerjaannya sebagai pencuci piring di Warkop. (TAMAT) - adiknya Bunga, si Mawar (nama disamarkan) kena serangan jantung dirumah, kaget pas ngeliat komputer kakaknya mati sendiri. (THE END)

//Article Begin
Skema yang terjadi disini sebelum komputer shutdown sendiri adalah:
HP >sms> MODEM/HP >diteruskan> KOMPUTER >diproses> APLIKASI >perintah> SHUTDOWN

Mari kita bahas satu persatu skema diatas.
Untuk HP sepertinya tidak perlu penjelasan panjang lebar, yang penting dari sisi HP yang digunakan untuk mengirim SMS ada pulsanya ja. :p

MODEM/HP yang menerima SMS
SMS yang diterima disini harus diteruskan ke program (yang nanti kita buat) agar bisa diproses. Sehingga kita membutuhkan aplikasi tambahan yang berfungsi sebagai semacam SMSGateway. Untuk aplikasi ini kita bisa menggunakan GAMMU (www.wammu.eu) untuk menyimpan SMS didalam sebuah database. Yang nantinya Data didalam database inilah yang akan kita proses. (Untuk tutorial GAMMU bisa di googling sendiri ya :p). Modem/HP yang digunakan sebagai penerima SMS disini bebas menggunakan merk apa saja, yang penting kompatibel dengan GAMMU. (cek di www.wammu.eu/phones)

APLIKASI
Bagian ini merupakan inti dari artikel ini, karena kita akan membuat sendiri aplikasi untuk shutdown komputer. Tentu saja disesuaikan dengan database yang digunakan GAMMU. Karena database yang digunakan adalah MySQL, jadi untuk part-1 ini aplikasi yang akan kita buat berbasis web dengan bahasa pemrograman PHP. So let’s coding it...
Php
PHP:

<?php
    
function waitCommand(){
        if(!isset(
$_GET['act'])){
            echo 
"<script type=\"text/javascript\">
                    function runCheck(){
                        document.location=\""
.$_SERVER['PHP_SELF']."\"
                    }
                    </script>"
;
            echo 
"<body onLoad=\"setTimeout ('runCheck()',10000)\">"//MELAKUKAN PENGECEKKAN SETIAP 10 DETIK
            
$sql mysql_query("SELECT * FROM `inbox`
                                ORDER BY `inbox`.`UpdatedInDB` DESC
                                LIMIT 0 , 1"
);
                                
$row mysql_fetch_row($sql);
                                if(
$row[11]=="false"){ //CEK SMS SUDAH DIPROSES ATAU BELUM
                                    
$getkey explode(" ",$row[8]);    //MENGAMBIL ISI PESAN                
                                    
if(strtoupper($getkey[0])=="SHUTDOWN"){
                                        
system("shutdown -s -t 50");
                                        
$set mysql_query("UPDATE `inbox` SET `Processed` =  'true' WHERE `inbox`.`ID` =".$row[9].";");
                                    }
                                }
        }
    }
    
waitCommand();
?>




Fungsi dari script diatas adalah untuk melakukan pengecekkan kedalam database, di tabel INBOX. Jika ada pesan masuk dengan keyword “SHUTDOWN” maka script akan memerintahkan komputer untuk melakukan shutdown. Untuk linux kita bisa menggunakan perintah “system(“halt”;)” tapi dengan terlebih dahulu melakukan autentikasi (part berikutnya :p)
Tapi tentu saja, dengan script diatas, komputer kita bisa diShutdown siapa saja jika ada SMS masuk dengan pesan “SHUTDOWN”, sehingga untuk mengatasi hal ini kita perlu melakukan validasi No.HP si pengirim SMS, dimana nomor ini harus berasal dari nomor HP kita sendiri. berikut validasinya dengan mengedit baris ini:
Php
PHP:
<?php             
if(strtoupper($getkey[0])=="SHUTDOWN"){
if(
$getkey[3]=="+628521234567"){ //MASUKKAN NOMOR HP KITA DISINI
        
system("shutdown -s -t 50");
        
$set mysql_query("UPDATE `inbox` SET `Processed` =  'true' WHERE `inbox`.`ID` =".$row[9].";");
    }
}
 
?>



Agar program yang kita buat ini melakukan pengecekkan terhadap inbox secara realtime, file ini harus dalam keadaan dibuka di browser.

Thx-To: X-Crew – www.ExploreCrew.org and K4PT3N

./vM




Detected

Your Browser's JavaScript is: