Anda di halaman 1dari 8

INSTAL

____________________________________________________________________________ Persiapan Hardware dan software Dalam ujicoba ini, saya menggunakan peralatan (hardware) sebagai berikut : 1. Komputer Intel Celeron 3.06GHz dengan OS Windows XP Pro Service Pack 2 2. Handphone (atau GSM Modem) Sony Ericsson G502 dengan kartu IM3 sebagai penerima sms (yang dihubungkan dengan komputer melalui USB) 3. Handphone Haier C2000 dengan kartu Fren untuk pengirim sms. Software yang saya gunakan : 1. 2. 3. 4. Sony Ericsson PC Suite Versi 5.009.000 (sebagai driver) (http://www.sonyericsson.com) XAMPP Versi 1.6.7 sebagai web server (http://www.nat32.com/xampp) NowSMS Versi 2008.06.03 sebagai gateway (http://www.nowsms.com) PHP Designer 2005 untuk menulis script php. (http://www.mpsoftware.dk). Software ini sifatnya hanya optional, jika tidak ada bisa menggunakan Notepad.

Proses Instalasi dan Pengujian Setelah semua software di-install (saya rasa tidak perlu dijelaskan bagaimana caranya meng-install), perlu kita uji dulu, apakah semua software berfungsi dengan baik. 1. Jalankan Sony Ericsson PC Suite dan sambungkan handphone Sony Ericsson G502 dengan komputer. Jika berhasil akan terlihat tampilan sebagai beikut :

2. Jalankan XAMPP Control Panel dan klik Start pada module Apache dan MySql

Setelah module Apache dan MySql running, buka Internet Explorer, dan ketikkan http://localhost (tentu saja tanpa tanda petik) pada address bar. Jika berhasil akan tampil sebagai berikut :

Menghubungkan GSM Modem dengan Gateway Untuk menghubungkan GSM Modem (Handphone) dengan Gateway, ikuti langkah-langkah berikut : 1. Jalankan NowSMS, mula-mula akan tampil sebagai berikut :

2. Klik Add, pada SMSC Connection Type pilih GSM Phone or Modem. Klik OK.

3. Pilih salah satu modem yang terdeteksi secara otomatis. Biarkan kolom Modem Pin kosong. Klik tombol Test and Add Modem.

4. Jika berhasil akan keluar tampilan berikut :

5. Klik Properties, akan terbuka window baru Modem Connection, masukkan nomor handphone yang tersambung dengan komputer ke kolom Phone Number. Beri tanda centang pada Receive SMS Messages. Biarkan kolom yang lain pada posisi default. Klik OK. Window Modem Connection akan tertutup. Klik Apply.

6. Ketika ada pertanyaan Configuration changes have been applied, do you wish to restart the service for the changes to take effect ? klik Yes. Mengaktifkan Web Interface pada Gateway Setelah modem terinstall dengan sukses, maka langkah selanjutnya adalah mengaktifkan Web Interface, caranya klik tab Web pada NowSMS.

Pastikan Anda memberi tanda centang pada Enable menu driven web interface. Secara default Web Interface akan bekerja pada port 8800. Kemudian buka juga tab Service.

Beri tanda centang pada Run as a service Sekarang coba kita buka Internet Explorer, dan ketikkan http://localhost:8800 pada address bar. Jika berhasil, akan terbuka halaman sebagai berikut :

Nah, dengan web interface ini, kita bisa mengirimkan sms melalui komputer kita, caranya ketikkan nomor telepon tujuan pada kolom Phone Number dan isi sms pada kolom Text. Biarkan kolom-kolom yang lain dalam kondisi default. Kemudian klik Submit. Pada langkah ini seharusnya sms akan terkirim ke nomor tujuan, jika tidak, periksa kembali semua konfigurasi pada langkah-langkah sebelumnya.

AUTORESPONDER
Membuat Database dan Script Php Setelah semua hardware dan software bekerja sesuai keinginan kita, kini saatnya kita membuat Autoresponder atau Autoreplay, kali ini yang sederhana saja dulu. Skenarionya adalah sebagai berikut : 1. HP pertama (yang terhubung dengan komputer) akan menerima sebuah sms 2. Sms tersebut akan dimasukkan ke dalam database 3. Kemudian komputer akan mengirimkan sms sebagai respon terhadap sms yang diterima. Mula-mula buatlah sebuah database, buka http://localhost/phpmyadmin

Ketikkan nama database yang akan dibuat pada kolom Create new database, misalnya sms (tanpa tanda petik), klik Create. Selanjutnya, buatlah sebuah table dengan nama inbox.

Klik pada tab SQL, dan ketikkan pada kolom Run SQL Query :
CREATE TABLE IF NOT EXISTS `inbox` ( `id` int(5) NOT NULL auto_increment, `sender` varchar(15) NOT NULL, `isi` text NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=10 ;

kemudian klik Go. Kita akan mendapatkan notifikasi Your SQL query has been executed successfully Sampai di sini kita telah berhasil membuat database sms dengan sebuah table bernama inbox yang berisi 3 field, yaitu id, sender, dan isi. Masih semangat atau sudah pusing ? Langkah berikutnya adalah membuat script php yang akan menjalankan skenario yang telah kita buat. Dan inilah script selengkapnya : <?php // konfigurasi database // sesuaikan dengan konfigurasi Anda function koneksi() { $user = root; $pass = ; $db = sms; $host = localhost; $konek = mysql_connect($host, $user, $pass); mysql_select_db($db, $konek); } // Ambil data dari url, yaitu url yang Anda masukkan // pada kolom Command to execute di NowSMS $sender = $_GET['sender']; $sender = substr_replace($sender,0,0,3); $isi = $_GET['isi']; $isi = trim($isi); // Masukkan data ke database koneksi(); $sql = INSERT INTO inbox (id, sender, isi) VALUES (, $sender, $isi) ; mysql_query($sql); // Memberi respon (autorespon) terhadap sms yang masuk // Catatan : Lokasi http://127.0.0.1:8800 adalah web interface dari NowSMS header(Location:http://127.0.0.1:8800/?PhoneNumber=$sender&Text=Terima+kasih.+Informasi+Anda+aka n+segera+kami+tindaklanjuti.); ?> Bukalah folder di mana Anda menginstall Xampp, di bawah folder htdocs buatlah folder baru dengan nama sms. Simpan script di atas dengan nama autoresponder.php pada folder tersebut.

Memberi Perintah Kepada Gateway untuk menjalankan Script Langkah terakhir adalah memberi perintah kepada gateway (NowSMS) untuk menjalankan script php yang telah kita buat : 1. 2. 3. 4. Jalankan kembali NowSMS, dan buka tab 2-Way. Beri tanda centang pada Process Received SMS Message Biarkan Character Set pada posisi default, yaitu utf-8 Ketikkan * (tanda bintang atau wildcard) pada kolom SMS Command Prefix, yang artinya semua sms akan kita proses 5. Ketikkan nomor handphone penerima sms, yaitu nomor handphone yang tersambung ke komputer, pada kolom Receive Phone Number(s) 6. Ketikkan http://localhost/sms/autoresponder.php?sender=@@SENDER@@&isi=@@FULLSMS@@ (tanpa tanda petik) pada kolom Command to Execute 7. Klik Add

Nah sekarang adalah saatnya untuk mencoba hasil kerja keras kita.

Kirimkan sebuah sms ke nomor handphone yang tersambung ke komputer. Isinya boleh apa saja, karena semua sms dengan isi pesan apapun akan direspon. Jika semuanya bekerja dengan baik, Anda akan mendapat balasan (autorespond) sebagai berikut : Terima kasih. Informasi Anda akan segera kami tindaklanjuti. Selamat, Anda sudah menyelesaikan pelajaran pertama tentang Sms Gateway ! Dengan sedikit kerja keras, aplikasi sederhana di atas dapat dikembangkan menjadi aplikasi Polling SMS, SMS Quick Count Pilkada, Premium SMS (yang ketik REG spasi bla bla bla itu lho . . . ), Server Pulsa Elektrik, posting blog by SMS, dan lain-lain sesuai kreativitas kita.

POLING
SMS Gateway : Aplikasi Polling SMS Sederhana
Setelah beberapa minggu lalu saya belajar membuat aplikasi autoresponder sederhana dengan sms gateway, sekarang saya ingin membuat aplikasi yang sedikit lebih rumit, yaitu polling sms. Aplikasi ini masih menggunakan NowSMS sebagai SMS Gateway-nya. Kali ini skenarionya adalah sebagai berikut : RT 2 Kelurahan XXX mengadakan acara lomba karaoke untuk memperingati acara 17-an. Pesertanya adalah remaja-remaja dari RT tersebut. Setelah melalui babak eliminasi, akhirnya ditetapkan ada 3 finalis, yaitu : Andi, Jamal, dan Ririn. Karena tidak mau dituduh subjektif, para juri sepakat untuk melibatkan penonton dalam pemilihan juara 1,2, dan 3 melalui polling sms. Penonton diminta untuk memilih penyanyi favoritnya dengan cara, ketik PILIH (spasi) NAMA PENYANYI dan dikirim ke nomor hp 0856780xxxx, di mana hp tersebut disambungkan ke komputer yang telah diprogram untuk mengolah data sms yang masuk. Nah, seperti apakah program yang ada dalam komputer tersebut ? Database dan Script Php Untuk Mengolah Data SMS Kita membutuhkan sebuah database untuk mengolah data sms yang masuk, misalnya database tersebut bernama polling, dengan sebuah table bernama inbox. Berikut ini script untuk membuat table tersebut :
CREATE TABLE IF NOT EXISTS `inbox` ( `id` int(5) NOT NULL auto_increment, `sender` varchar(15) NOT NULL, `pilihan` text NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=10 ;

Setelah database terbuat, kita membutuhkan sebuah script Php untuk memasukkan pilihan pengirim sms ke dalam database. <?php // konfigurasi database // sesuaikan dengan konfigurasi Anda function koneksi() { $user = root; $pass = ; $db = polling; $host = localhost; $konek = mysql_connect($host, $user, $pass); mysql_select_db($db, $konek); } // Ambil data dari url, yaitu url yang Anda masukkan // pada kolom Command to execute di NowSMS $sender = $_GET['sender']; $pilihan = $_GET['pilihan']; // Masukkan data ke database koneksi(); $sql = INSERT INTO inbox (id, sender, pilihan) VALUES (, $sender, $pilihan) ; mysql_query($sql); // Memberi respon (autorespon) terhadap sms yang masuk header(Location:http://127.0.0.1:8800/?PhoneNumber=$sender&Text=Terima+kasih+telah+memilih.); ?> Simpan script di atas dengan nama polling.php Memberi Perintah ke SMS Gateway Langkah berikutnya adalah memberi perintah kepada gateway (NowSMS) untuk menjalankan script polling.php yang baru saja kita buat : 1. 2. 3. 4. Jalankan NowSMS, dan buka tab 2-Way. Beri tanda centang pada Process Received SMS Message Biarkan Character Set pada posisi default, yaitu utf-8 Ketikkan PILIH (tanpa tanda petik) pada kolom SMS Command Prefix, yang artinya hanya sms dengan kata pertama PILIH saja yang akan diproses 5. Ketikkan nomor handphone penerima sms, yaitu nomor handphone yang tersambung ke komputer, pada kolom Receive Phone Number(s) 6. Ketikkan http://localhost/sms/polling.php?sender=@@SENDER@@&pilihan=@@SMS@@ (tanpa tanda petik) pada kolom Command to Execute

7. Klik Add

Melihat Hasil Polling Setelah para finalis menampilkan kemampuan terbaik mereka, dan para penonton telah memberikan pilihannya melalui SMS, maka kini saatnya para juri memutuskan juara dari lomba karaoke tersebut. Untuk melihat hasil polling, kita membutuhkan sebuah script lagi untuk menampilkan hasil pengolahan data SMS yang masuk. Script tersebut kira-kira sebagai berikut : <html> <head> <meta http-equiv=refresh content=5> </head> <body> <?php // konfigurasi database // sesuaikan dengan konfigurasi Anda function koneksi() { $user = root; $pass = ; $db = polling; $host = localhost; $konek = mysql_connect($host, $user, $pass); mysql_select_db($db, $konek); } // Ambil data dari database // Cari total SMS yang masuk koneksi(); $sql = SELECT * FROM inbox; $query = mysql_query($sql); $totalsms = mysql_num_rows($query); // Cari jumlah SMS per finalis $finalis = array(Andi, Jamal, Ririn); for($i=0;$i<=2;$i++){ $sql = SELECT * FROM inbox WHERE pilihan=$finalis[$i]; $query = mysql_query($sql); $suara[$i] = mysql_num_rows($query); } // menampilkan hasil polling dalam bentuk table ?> <table border=1> <tr> <td align=center width=70px>Finalis</td> <td align=center width=120px>Perolehan SMS</td> <td align=center width=100px>Prosentase</td> </tr> <? for($i=0;$i<=2;$i++){ $prosentase[$i] = number_format((($suara[$i]/$totalsms)*100),2); echo(<tr>); echo(<td align=\center\>$finalis[$i]</td>); echo(<td align=\center\>$suara[$i]</td>); echo(<td align=\center\>$prosentase[$i]%</td>); echo(</tr>); } ?> </table> </body> </html>

Simpan script tersebut dengan nama hasilpolling.php. Jika dijalankan, script tersebut akan menampilkan hasil pengolahan data sebagai berikut :

Nah, berdasarkan hasil polling inilah, akhirnya juri memutuskan, bahwa : - juara satu adalah Andi dengan perolehan suara 17 sms atau 54.84% - juara dua adalah Ririn dengan perolehan suara 8 sms atau 25.81% - juara tiga Jamal dengan perolehan suara 6 sms atau 19.35%

ABSEN
Database Absensi
Untuk dapat menjalankan aplikasi ini, tentu saja kita harus punya database yang berisi tentang absensi siswa. Mula-mula buatlah database dengan nama absensi, kemudian buat table dengan script di bawah : CREATE TABLE IF NOT EXISTS `absen` ( `nama_siswa` varchar(25) NOT NULL, `ni_siswa` varchar(6) NOT NULL, `bulan` varchar(10) NOT NULL, `absen` int(11) NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; INSERT INTO `absen` (`nama_siswa`, `ni_siswa`, `bulan`, `absen`) VALUES (Budi Harjo, 092340, Agustus, 2), (Siti Nurhaliza, 092341, Agustus, 0), (Rahmawati, 092342, Agustus, 9), (Agus Sofyan, 092343, Agustus, 1), (Moh. Yanto, 092344, Agustus, 3), (Kris Dayati, 092345, Agustus, 0), (Rohmat, 092346, Agustus, 14), (Budi Harjo, 092340, September, 3), (Siti Nurhaliza, 092341, September, 1), (Rahmawati, 092342, September, 7), (Agus Sofyan, 092343, September, 4), (Moh. Yanto, 092344, September, 2), (Kris Dayati, 092345, September, 1), (Rohmat, 092346, September, 11);

Script Php Untuk Mengolah SMS Masuk


Setelah database terbuat, kita membutuhkan sebuah script Php yang akan mengolah SMS yang masuk, dan memberi respon sesuai permintaan : <?php function koneksi(){ // konfigurasi database // sesuaikan dengan konfigurasi Anda $user = root; $pass = ; $db = absensi; $host = localhost; $konek = mysql_connect($host, $user, $pass); mysql_select_db($db, $konek); } // Ambil data dari url, yaitu url yang Anda masukkan // pada kolom Command to execute di NowSMS $sender = $_GET['sender']; // Pisahkan NIS dan Bulan $pesan = $_GET['pesan']; $textarray = explode( , $pesan); $ni_siswa = $textarray[0]; $bulan = $textarray[1]; // Look up data di database koneksi(); $sql = SELECT * FROM absen WHERE ni_siswa=$ni_siswa AND bulan=$bulan; $qry = mysql_query($sql); $row = mysql_fetch_array($qry); $nama_siswa = $row[nama_siswa]; $absen = $row[absen]; // Jika nama siswa ada spasi, ganti spasi dengan tanda + $words = explode ( , $nama_siswa); $nama_siswa = join(+, $words); // Memberi respon (autorespon) terhadap sms yang masuk header(Location:http://127.0.0.1:8800/?PhoneNumber=$sender&Text=$nama_siswa+pada+bulan+$bulan+a bsen+ sebanyak+$absen+hari); ?> Simpan script di atas dengan nama absensi.php

Memberi Perintah ke SMS Gateway


Langkah berikutnya adalah memberi perintah kepada gateway (NowSMS) untuk menjalankan script absensi.php setiap ada SMS yang masuk :
1. 2. 3. 4. Jalankan NowSMS, dan buka tab 2-Way. Beri tanda centang pada Process Received SMS Message Biarkan Character Set pada posisi default, yaitu utf-8 Ketikkan ABSEN (tanpa tanda petik) pada kolom SMS Command Prefix, yang artinya hanya sms dengan kata pertama ABSEN saja yang akan diproses 5. Ketikkan nomor handphone penerima sms, yaitu nomor handphone yang tersambung ke komputer, pada kolom Receive Phone Number(s) 6. Ketikkan http://localhost/sms/absensi.php?sender=@@SENDER@@&pesan=@@SMS@@ (tanpa tanda petik) pada kolom Command to Execute 7. Klik Add

Kesimpulan
Cobalah kirim SMS dengan format : ABSEN (spasi) 092341 (spasi) September dan kirim ke nomor HP yang berfungsi sebagai SMS server, maka Anda akan mendapat balasan sebagai berikut : Siti Nurhaliza pada bulan September absen sebanyak 1 hari Cek respon yang Anda dapat dengan data di database Anda.

Anda mungkin juga menyukai