#2 Weekly Sharing : KANNEL , Open Source SMS Gateway

Kannel adalah sebuah aplikasi open source yang berfungsi sebagai WAP Gateway dan SMS Gateway untuk jaringan GSM. Dibangun dengan bahasa C dan dapat terhubung dengan SMSC , handphone , dan GSM/GPRS Modem. Kannel menggunakan interface HTTP/HTTPS untuk mengirim dan menerima sms.

Okay, namun apa sebenarnya SMS, SMSC ataupun SMS Gateway? Eitss, jangan terlanjur pusing terlebih dahulu. Berikut penjelasan singkatnya:

  • Apa itu SMS?
    SMS (Short Message Service) adalah sebuah teknologi yang memungkinkan penggunanya untuk menerima dan mengirimkan pesan antar handphone . SMS pertama kali muncul di Eropa pada tahun 1992.
  • SMSC
    SMSC atau biasa dikenal dengan SMS Center bertanggung jawab untuk mengendalikan pengiriman sms. Ketika pesan dari hanpdhone terkirim, pesan akan dikirmkan ke smsc terlebih dahulu, kemudian smsc akan meneruskannya ke tujuan. Ketika alamat tujuan tidak dapat dihubungi maka pesan akan disimpan oleh smsc kemudian akan dikirim lagi beberapa saat kemudian. Pada dasarnya alamat smsc itu seperti nomor biasa hanya saja menggunakan nomor international , pada kartu SIM (Subscriber Identity Module) lama / hp lama biasanya kita harus mensettting alamat smsc tersebut secara manual tetapi untuk sekarang alamat smsc tersebut sudah tersimpan dalam kartu SIM.
  • SMS Gateway
    SMS Gateway berfungsi untuk menjembatani pesan yang dikirim dan diterima, seperti penghubung antara dua smsc yang berbeda protocol (terkadang tiap organisasi/vendor mempunyai protocol tersendiri di smsc mereka),  mengirimkan pesan melalui SIM card, membuat pesan yang masuk menjadi email dan sebagainya termasuk mengirim pesan massal untuk promosi.

Kemudian, bagaimana caranya menggunakan Kannel sebagai open source dari SMS Gateway?

  • Instalasi Kannel pada Ubuntu# apt-get install kannel
  • Konfigurasi Kannel
    Setelah kannel terinstall , rubah file konfigurasi kannel yang biasanya terletak pada direktori  /etc/kannel/kannel.conf#BEARERBOX/CORE SETUP
    group = core
    admin-port = 13000
    admin-password = password
    status-password = password
    log-file = “/var/log/kannel/bearerbox.log” ## → letak log bearerbox
    log-level = 0 ##-> 0 = debug , 1 = info , 2 = warning , 3 = error , 4 = panic
    access-log = “/var/log/kannel/access.log”
    smsbox-port = 13001
    store-location = “/var/log/kannel/kannel.store” ## → letak file dimana pesan disimpan#SMSC modem
    group = smsc
    smsc = at
    host = localhost
    port = 13013
    smsc-id = idsmsc
    my-number = 082123456789 ## → nomor SIM card yang dipake
    modemtype = wavecom
    device = /dev/ttyUSB0 ## → lokasi modem , biasanya terletak di ttyUSB0/ttyUSB1
    speed = 115200#MODEM
    group = modems
    id = WAVECOM
    name = wavecom
    detect-string = “WAVECOM”
    detect-string2 = “MODEM”
    init-string = “AT+CNMI=1,2,0,1,0;+CMEE=1”

SMSBOX SETUP

group = smsbox
bearerbox-host = localhost
sendsms-port = 13131
sendsms-chars = “0123456789+”
log-file = “/var/log/kannel/smsbox.log” ## → log sms yang masuk
log-level = 0
access-log = “/var/log/kannel/access.log”
global-sender = 082123456789

SEND-SMS USERS

group = sendsms-user
username = username
password = password
user-allow-ip = 127.0.0.1 ## → alamat ip yang diperbolehkan mengirim pesan

group = sms-service
keyword = default
max-messages = 0
get-url = “http://urlapiservice/respond?msg=%a&time=%t&sender=%p”

  • Catatan
    – Setting kannel di atas diperuntukan untuk pengiriman pesan menggunakan modem, untuk pengiriman langsung ke smsc memerlukan akses ke smsc tujuan yang tergolong susah didapat.
    – Pada group sms-service get-url adalah alamat url yang akan dikirimkan data pesan yang masuk melalui protocol http dalam hal ini GET dengan parameter %a = isi pesan yang diterima , %t = waktu pesan tiba , %p = nomor pengirim.
  • Menjalankan Kannel# /usr/sbin/bearerbox /etc/kannel/kannel.conf &Untuk menjalankan bearerbox # /usr/sbin/smsbox /etc/kannel/kannel.conf &

Untuk menjalankan smsbox untuk memantau pesan yang masuk
Untuk menghentikan service kannel cukup ketikkan perintah

# pkill box

Secara garis besar kalau tidak ada masalah kannel sudah bisa berjalan , untuk mencoba mengirimkan pesan bisa mencoba masukkan url ini dibrowser

http://127.0.0.1:13013/cgi-bin/sendsms?username=user&password=pass&to=085xxxxxx&text=mau+kirim+sms

*Catatan
– 127.0.0.1 adalah alamat dimana aplikasi kannel berada dan 13013 adalah port yang diatur di group SMSC, sedangkan user dan password harus sesuai yang ditulis di group sendsms-user, serta alamat / ip komputer browser yang menjalankan perintah ini juga harus terdaftar di group sendsms-user.

Ditulis oleh : Zulfikar Latief (back end developer of MailTarget)
Disunting oleh : MailTarget Team

*) Weekly sharing adalah sebuah kegiatan berdiskusi yang dilakukan oleh tim MailTarget. Para anggota tim MailTarget setiap minggunya secara bergiliran menjadi pemateri dari sesi berdiskusi tersebut.


MailTarget.co adalah sebuah perusahaan SaaS (software as a service) yang membuat email system dengan teknologi artificial intelligence.