Membangun SMS Gateway pada Ubuntu 10.04 LTS

Pengertian SMS

  • Short Message Service atau biasa disingkat SMS merupakan sebuah layanan yang banyak diaplikasikan pada sistem komunikasi tanpa kabel (wireless), memungkinkan dilakukannya pengiriman pesan dalam bentuk alphanumeric antara terminal pelanggan atau antar teminal pelanggan dengan sistem eksternal, seperti e-mail, paging, voice mail, dan lain-lain.

Transmisi SMS

  • Sifat transmisi SMS yang merupakan short burst membuat jenis aplikasi yang memanfaatkan SMS biasanya berupa aplikasi pengiriman data yang ringkas dan pendek. Sifat perangkat SMS yang mobile dan dapat mengirimkan informasi dari mana saja selama masih dalam cakupan layanan operator, memunculkan aplikasi lapangan dimana informasi-informasi yang dikumpulkan dari lapangan dikirim secara berkala kepada pusat pengolahan informasi.

Keunggulan SMS

  • Teknologi SMS memiliki beberapa keunggulan, diantaranya adalah :
  1. Harganya murah.

  2. Merupakan “delivered oriented service“

  3. Dapat dikirim ke banyak penerima sekaligus pada saat bersamaan.

  4. Pesan dapat dikirim ke berbagai jenis tujuan, seperti e-mail, IP, ataupun aplikasi lain.

  5. Kegunaannya banyak, dengan cara diintegrasikan dengan aplikasi content.

Cara kerja SMS

  • Saat kita menerima pesan SMS/MMS dari handphone (mobile originated), pesan tersebut tidak langsung dikirimkan ke handphone tujuan (mobile terminated), akan tetapi dikirim terlebih dahulu ke SMS Center (SMSC) yang biasanya berada di kantor operator telepon, baru kemudian pesan tersebut diteruskan ke handphone tujuan. Dengan adanya SMSC, kita dapat mengetahui status dari pesan SMS yang telah dikirim, apakah telah sampai atau gagal.

Sejarah SMS

  • Sejarah SMS muncul pada Desember 1992. Pesan itu dikirim dari sebuah komputer ke sebuah telepon seluler dalam jaringan GSM milik operator seluler Vodafone di Inggris.

GAMMU

  • Gammu (GNU All Mobile Management Utilities) merupakan salah satu pustaka atau library opensource yang dibuat sebagai gateway antara handphone dengan perangkat komputer. Aplikasi ini yang akan kita gunakan sebagai SMS Gateway

Kelebihan Gammu

  • Kelebihan Gammu dari tool sms gateway lainnya adalah:

    1. Gammu dapat dijalankan di multiplatform (Windows atau Linux).

    2. Banyak device (handphone / modem ) yang kompatiel dengan Gammu.

    3. Gammu menggunakan database MySQL atau ProgestSQL, sehingga bisa menggunakan interface web-based.

    4. Gammu mensupport banyak koneksi, dari kabel data USB, serial, infrared dan Bluetooth semuanya kompatibel dengan Gammu.

    5. Gammu selalu diupdate versinya (testing release) untuk mempatch bugs yang terdapat di versi yang sebelumnya.

Topologi SMS Gateway

Topologi SMS Gateway

Topologi SMS Gateway

Konfigurasi

  • Kita beranggapan sudah menginstal Ubuntu 10.04 LTS. Langkah selanjutnya kita menginstal Apache2 web server. Apache2 merupakan aplikasi web server yang menunjang PHP. Tentunya kita dapat menggunakan aplikasi web server lainnya, contohnya seperti Lighttpd
    # apt-get install apache2 libapache2-mod-php5

  • Jalankan daemon apache2 dengan perintah : # /etc/init.d/apache2 restart

  • Untuk memastikan apakah instalasi apache2 berhasil, buka web browser dan masukkan URL http://localhost/ pada address bar. Jika berhasil akan muncul tampilan seperti di bawah.

    it works!

    it works!

  • Lalu instal paket mysql-server, ketik : # apt-get install mysql-server

  • Konfirmasi password untuk root, masukkan password yang sama. Tentu saja jika password yang dimasukkan berbeda sebelumnya akan muncul hint sampai password yang dimasukkan benar.

  • Instal paket php5. Paket php5 merupakan paket penunjang phpMyAdmin. Php5 adalah bahasa pemrogaman yang ditujukan untuk membangun sebuah web. # apt-get install php5

  • Instal paket mysql-php5 untuk menjembatani koneksi php ke database MySQL. # apt-get install mysql-php5
  • Instal paket phpMyAdmin. PhpMyAdmin memudahkan untuk memanage database MySQL dan juga bisa untuk memanage SMS Gateway. # apt-get install phpmyadmin
  • Opsi untuk memilih web server apa yang secara otomatis akan dikonfiguarasikan untuk phpMyAdmin. Pilih Apache2 karena sebelumnya kita telah memilih dan menginstal Apache2 sebagai web server.

  • Akan muncul opsi untuk mengkonfigurasikan database untuk phpMyAdmin dengan dbconfig-common. Pilih Yes jika menggunakannya, atau No untuk mengkonfigurasi secara manual.

  • Akan muncul sebuah dialog untuk meminta anda mengisikan password administrative account  yang digunakan pada database MySQL. Masukkan password yang sama ketika anda mengisi password saat menginstal mysql-server

  • Masukkan password untuk phpMyAdmin untuk bisa terkoneksi dengan databse server, jika tidak diisi password akan diisikan secara random. Lalu Konfirmasi password.

  • Untuk menginstal gammu ketik ”# apt-get install gammu gammu-smsd” lalu Enter
  • Sambungkan modem GSM pada PC. Untuk mengetahui apakah handphone tersebut telah terdeteksi oleh komputer, ketikkan perintah ”lsusb”. Jika muncul tampilan seperti di bawah ini, berarti handphone sudah terdeteksi oleh komputer.

    lsusb

    lsusb

  • Untuk mengetahui dimanakah letak port yang terhubung ke handphone ketikkan ”dmesg”. Dalam praktek kali ini port yang terhubung ke handphone Siemens C60 ialah ttyUSB0.

    dmesg

    dmesg

  • Setelah gammu selesai diinstal, ketik ”# gammu-config” di Terminal. Maka akan muncul dialog yang akan kita isi konfigurasinya

    config

    config

  • Karena nantinya kita akan menghubungkan Gammu dengan PHP dan MySQL, maka kita melanjutkan proses edit file /etc/gammu-smsdrc. Lakukan konfigurasi database MySQL sesuai dengan konfigurasi yang terdapat pada sistem MySQL kita.

    smsdrc

    smsdrc

  • Login ke phpMyAdmin dan buat database bernama “sms” untuk meletakkan struktur database Gammu
  • Lakukan proses dump struktur tabel Gammu yang terdapat di /usr/share/doc/gammu/examples/sql/mysql.sql.gz ke database sms

    dump file mysql.tar.gz

    dump file mysql.tar.gz

  • Kini database yang dibutuhkan untuk koneksi ke Gammu telah dibuat. Untuk memastikan handphone/modem sudah dapat terdeteksi dengan baik, kita dapat mengetikkan ”# gammu –identify

    Gammu Identify

    Gammu Identify

  • Untuk memastikan konfigurasi sudah berjalan dengan baik, cek dengan menjalankan service gammu-smsd. # gammu-smsd

    Gammu-smsd service

    Gammu-smsd service

  • Terakhir, uji coba untuk mengirimkan SMS dengan menggunakan Gammu. # gammu –send text notujuan

    send sms

    send sms

Sekian dulu untuk tutorial membangun sms gateway kali ini. Untuk tutorial lebih lanjut dan advance bisa klik di link Google Presentation ini.

Written by : Devi Ari . L

Reference : google.com :p and infoLinux magazine

Leave a comment