Pontianak Web & Open Source

Jasa Buat Website Pontianak. Pontianak Web & Open Source

SMS Gateway Gammu dan Kalkun Sebagai Web Interfacenya

Sab, 2011-03-26 23:19 -- mbahlol

Berikut ini cara membuat (sebenarnya bukan buat, cuman konfigurasi hehehe aku belum mahir seperti orang-orang pinter yang udah buat sistem edan) SMS Gateway dengan Gammu dan Kalkun Sebagai Web Interfacenya. Server yang digunakan adalah ubuntu 9.10 dan HP Sony Ericsson K770i beserta kabel datanya (HP pribadi jadi uji coba dah).

Pertama instalasi LAMP silahkan klik di dhafy.com.

Kemudian instalasi gammu

sudo apt-get install gammu gammu-smsd

Cek port HP dengan perintah dmesg, (pada contoh aku gunakan dmesg | grep USB, karena banyak sekali daftarnya). Setelah keluar daftarnya, tuing...tuing....nih kepala. Yang mana nih portnya. Setelah lihat tutorial yang aku baca, di situ pake portnya ttyUSB0. Aku pilihlah si ttyACM0 itu.

SMS Gateway

Kemudian buat file gammurc dengan perintah sudo nano /etc/gammurc dengan isi seperti dibawah

[gammu]
port = /dev/ttyACM0
connection = at
logfile = /etc/gammulog
logformat = textall
use_locking = yes

Untuk mengecek perangkat dapat di lakukan dengan perintah gammu --identify

SMS Gateway

Karena Gammu akan berhubungan dengan PHP dan MySQL maka file /etc/gammu-smsdrc perlu di edit

sudo nano /etc/gammu-smsdrc

Isi dari  /etc/gammu-smsdrc

[gammu]
# Please configure this!
port = /dev/ttyACM0
connection = at

# SMSD configuration, see gammu-smsdrc(5)
[smsd]
pin = ' '
service = mysql
DeliveryReport = sms
logfile = /etc/smsdlog

# Increase for debugging information
debuglevel = 255

#Konfigurasi MySQL
User = sesuaikan
Password = sesuaikan
PC = localhost
Database = sesuaikan

Pembuatan database dapat dilakukan dengan phpmyadmin. Berikutnya adalah instalasi Kalkun. Pertama download kalkun dan ekstrak kedalam folder web server /var/www (untuk folder kalkun aku rubah menjadi folder sms). Kemudian edit file /var/www/sms/system/application/config/database.php dan sesuaikan dengan username, password, dan database yang sudah di buat.

nano /var/www/sms/system/application/config/database.php

SMS Gateway

Berikutnya instalasi kalkun melalui web browser. Buka browser dan masukkan alamat http://namaserver/sms, ikuti perintah instalasi yang muncul di web browser. Setelah instalasi selesai, pada shell ketik sudo /etc/init.d/gammu-smsd start untuk memulai service gammu. Untuk login kalkun, masukkan user kalkun dan password kalkun.

Pada waktu ujicoba aku menemui masalah yang mengatakan versi gammu yang tidak support. Dengan bantuan om google aku ganti versi gammu yang sebelumnya 11 menjadi 10 yang terdapat di dalam table gammu.

SMS Gateway

 

Sampai sejauh ini sms bisa kirim dan terima via kalkun, tinggal mencari cara bagaimana gammu ini bisa nyambung ke drupal, nanti aja carinya kepala mau pecah rasanya.

Revisi tambahan:

Setelah ujicoba yang kedua kali sms gateway ini, sekitar bulan (maret 2012) ternyata aku menemukan beberapa hal yang perlu diperbaiki. Seperti

  1. Pesan masuk, hanya masuk ke database dan tidak tampil diinbox .
  2. File log yang ada di /etc/smsdlog, gila nih file 1 hari aja 1 GB untuk ukuran sizenya.
  3. Setiap sms yang dikirim menampilkan sender @username. Sayang karakter nih

Setelah lama googling gak nemu juga, akhirnya ketemu juga solusi yang dulu pernah aku lakukan untuk sistem lain. Seperti logrotate di samba server.

Pertama untuk kasus inbox tidak tampil, awalnya ketemu cara di pembuat kalkun. Harus tambah runonrecieve pada file konfigurasi smsd. Cuma koq kagak masuk juga nih pesan, koq hanya muncul di databasenya doank.  Setelah lama melamun...ah ingat juga tentang kerjaan dulu. Harus update berita website jam 06:00 pagi. Daripada bangun pagi untuk masuk kantor, mending pake crontab hehehehe....sekali lagi terima kasih om linux buat crontab nya. Dengan perintah crontab -e aku tambah baris * * * * * /var/www/sms/scripts/daemon.sh supaya script tersebut dipanggil tiap menit.

Untuk cara kedua aku buat logrotate berdasarkan catatan tentang logrotate di samba server. jadi si file /etc/smsdlog tersebut akan dirotasi tiap hari dan di kompres juga biar ukurannya kecil, bukan kompres buat turun demam ya hehehehe.....

nano /etc/logrotate.d/smsdlog

Isi dengan baris seperti dibawah

/etc/smsdlog{
rotate 4
daily
compress
missingok
notifempty
}


Save dan exit. Sudah selesai, sekarang file lognya akan dirotasi tiap hari.

Terakhir menghilangkan sender @username, mungkin cara ini kurang tepat cuma cara ini yang aku temukan dengan cepat dan simple. Cari file ../aplication/controllers/messages.php

 

Aku kasi tanda // seperti dibawah supaya jadi komentar.

//$data['message'] .= "\n".$append_username_message;

Sip semua sudah selesai. Tinggal terus coba...ketemu error trus pusing dan googling. Ujicoba di linux, jika di windows untuk crontab bisa di atur di schedule task sedangkan untuk log rotate aku kurang tau :p

Sumber: Majalah info linux edisi 03/2010 | om google

Kategori Blog: