Thursday, April 26, 2012

SMS Gateway di Windows

Tutorial Membuat SMS Gateway Sistem Absensi di Windows Menggunakan Aplikasi NowSMS
Salam...
Menanggapi beberapa permintaan dan pertanyaan di Group Teknisi Komputer Indonesia berikut ini saya bagikan sepenggal copian file presentasi saya sewaktu kuliah dari berbagai sumber:

Istilah gateway, bila dilihat pada kamus Inggris-Indonesia diartikan sebagai pintu gerbang. Namun pada dunia komputer, gateway dapat berarti juga sebagai jembatan penghubung antar satu sistem dengan sistem lain yang berbeda, sehingga dapat terjadi suatu pertukaran data antar sistem tersebut. Dengan demikian, SMS gateway dapat diartikan sebagai suatu penghubung untuk lalu lintas data-data SMS, baik yang dikirimkan maupun yang diterima.
Sebuah gateway SMS adalah cara mengirim pesan teks dengan atau tanpa menggunakan telepon (sel) mobile. Secara khusus, ini adalah perangkat atau layanan yang menawarkan transit SMS oleh salah satu pesan transformasi. Penggunaan khas gateway adalah untuk meneruskan email sederhana ke ponsel penerima. Hal ini juga dapat berguna dalam mengembangkan aplikasi web yang dapat berinteraksi dengan melalui SMS (Short Messaging Service).

*Info lengkap tentang Apa, Mengapa, Bagaimana, keuntungan, kerugian dll mengenai sms gateway googling aja deh.. :-D

Berikut tahapan membuat SMS Gateway untuk Sistem Absensi pada Sistem Operasi Windows menggunakan aplikasi NowSMS versi 2008.06.03! 


Persiapan

  1. OS Windows XP atau 7
  2. Modem GSM/CDMA + Compatible Driver + SimCARD
  3. Aplikasi NowSMS
  4. Webserver (xampp / appserv), saya sendiri lebih suka XAMPP. kenapa? :-D
  5. Editor php, ato notepad dah klo ga ada
  6. Kopi Hitam + Mild (wajib)

Instalasi
  • Pastikan rekan2 sudah menginstall modemnya terlebih dahulu.
  • Install XAMPP
  • Download dan install NowSMS :  Download aplikasi NowSMS disini  . untuk keygen PM aja ya..
  •  
  • Buka XAMPP Control Panel dan klik Start pada modules Apache (port 80) dan MySql (port 3306)
  • Buka browser misalnya Mozilla Firefox, ketikkan url http://localhost jika muncul gambar ini berarti webserver sudah berjalan:
  •  

    • Buka NowSMS, Klik pada Tab SMSC, klik Add pilih SMSC Connection Type dilanjutkan OK


    • No.1 pilih modem yg terdeteksi, No. 2 kosongkan, Klik No.3

    • Jika berhasil akan ada notifikasi Modem Succesfully Tested! klik OK

    • Lanjutkan proses konfigurasi modem, klik Properties : Isikan Phone Number dan jangan lupa centang Receive SMS Message. Klik OK, dilanjutkan Apply. 

    • Sampai disini modem sudah terinstall. Langkah selanjutnya adalah mengaktifkan Web Interface pada gateway. :-D

    Web Interface pada Gateway
    • Buka aplikasi NowSMS, klik Tab Web. Pada Port Number for Web Interface isi 8800 kemudian centang Enable menu driven web interface.
    • Buka Tab Services, pada SMS Gateway servicekita centang Run as a service. klik OK, OK, tutup NowSMS.
    • Buka Browser, masukan url http://localhost:8800/ tampilannyaa seperti ini.
    • Sampai tahap ini kita sudah bisa menggunakan web browser sebagai sarana untuk mengirimkan sms.

    Membuat Data Base untuk Sistem Absensi
    • Buka Browser, masukan url http://localhost/phpmyadmin. pada kolom database, isikan nama database. misalnya absensi kemudian klik Create.
    • Buat tabel, misal dengan nama absen, 4 kolom (atau sesuai kebutuhan). Go. Isikan:
      1. 'nm_siswa' varchar(25) NOT NULL,
      2. 'nis_siswa' varchar(5) NOT NULL,
      3. 'bulan' varchar(10) NOT NULL,
      4. 'absen' int(11) NOT NULL,
    • Atau gunakan perintah sql :CREATE TABLE IF NOT EXISTS `absen` (  `nm_siswa` varchar(25) NOT NULL,  `nis_siswa` varchar(5) NOT NULL,  `bulan` varchar(10) NOT NULL,  `absen` int(11) NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1;

    • Isikan data siswa sesuai dengan tabel, misal dengan menggunakan perintah sql ---------------------------------------------------INSERT INTO `absensi`.`absen` (`nama_siswa` ,`nim_siswa` ,`bulan` ,`absen`)VALUES ('Syaflan Cool', '092340', 'Agustus', '2'), ('Candra Kirana', '08234', 'April', '0' ); --------------------------------------------------- dst.
    • Note data siswa sesuaikan sendiri. :-pMulai pusing nih.. Nyalain Mild dulu deh.. :-D

    • Setelah database dan tabel siswa berhasil dibuat kita lanjutkan membuat skrip php nya.

    Skrip PHP
    Skrip ini berfungsi untuk mengolah dan memberikan respon sesuai sms yang diterima.
    • Buka editor php, disini saya menggunakan notepad++, tuliskan skrip berikut dengan hati-hati:
    ------------------------------------------------------------------------------
    <?php

    function koneksi(){
       $user = "root";
       $pass = "";
       $db = "absensi";
       $host = "localhost";
       $konek = mysql_connect($host, $user, $pass);
       mysql_select_db($db, $konek);
    }
    $sender = $_GET['sender'];

    $pesan = $_GET['pesan'];
    $textarray = explode(' ', $pesan);
    $nis_siswa = $textarray[0];
    $bulan = $textarray[1];

    koneksi();
    $sql = "SELECT * FROM absen WHERE nis_siswa='$nis_siswa' AND bulan='$bulan'";
    $qry = mysql_query($sql);
    $row = mysql_fetch_array($qry);
    $nm_siswa = $row[nm_siswa];
    $absen = $row[absen];

    $words = explode (' ', $nm_siswa);
    $nm_siswa = join('+', $words);

    header("Location:http://127.0.0.1:8800/?PhoneNumber=$sender&Text=$nm_siswa+pada+bulan+$bulan+telah+absen+sebanyak+$absen+hari");

    ?>

    ------------------------------------------------------------------------------

    • Simpan skrip tersebut di \htdocs\absensi\absensi.php

    Membuat Command ke SMS Gateway
    • Buka lagi NowSMS, klik Tab 2-Way
      1. Centang Process Received SMS Message
      2. Ketik sebuah kata di box SMS Command Prefix, kata inilah yang akan diproses. misal diisi ABSEN.
      3. Receive Phone Number(s) diisi Nomer SMS Gateway.
      4. Command to Execute adalah lokasi dimana file absensi.php berada, disini saya simpan di \htdocs\absensi\absensi.php jadi command yg diisikan http://localhost/absensi/absensi.php?sender=@@SENDER@@&pesan=@@SMS@@
      5. untuk opsi lainnya biarkan default.
    • klik Add
    • Selesai.

    Testing
    SMS Gateway sederhana sistem sbsensi siswa ini bekerja memberikan respon/balasan berdasarkan perintah dari kata ABSEN yg diterima melalui sms. Coba ketik sebuah sms dengan format :
    ABSEN<SPASI>[nim_siswa]<SPASI>[bulan]
    misalnya ketik :
    "ABSEN 092340 Agustus" (tanpa tanda petik) kirim ke 085742960344
    Jika berhasil, rekan2 akan menerima balasan sesuai database dan skrip php yg sudah disiapkan yakni: "Syaflan Cool pada bulan Agustus absen sebanyak 2 hari"

    Selamat mencoba, mohon maaf jika banyak kekurangan dan kesalahan penulisan.. Terima kasih untuk All Admins & Members Group Teknisi Komputer Indonesia

    Referensi:
    -wikipedia
    -ppt dokumen lama
    -bintangweb

    UPDATE:Dari problem yg rekan @Syaflan ceritakan dan pengalaman sy sebelumnya, kebanyakan kesalahan ada di bagian membuat database dan skrip php nya.
    Silakan rekan2 download disini : http://dl.dropbox.com/u/31772125/php_sql.zip
    • Ekstract file php_sql.zip
    • Copy file absensi.php ke folder \htdocs\absensi\
    • Buka phpmyadmin, cari database absensi & import file absensi.sql

    1 komentar: