Bikin SMS Gateway dengan Kannel

By | September 1, 2008

Jaman sekarang hampir semua orang punya handphone, sehingga banyak aplikasi yang bisa di kembangkan. bisa melalui sms atau melalui voice.
pada kesempatan kali ini akan saya sampaikan pengalaman bikin sms gateway pake kannel.

1. Downloading dan Compiling Kannel

Download kanel yang terbaru kannel-1.4.1 di kannel.org. Kemudian lakukan langkah berikut :

# mkdir src
# cd src
# tar xfz ../downloads/gateway-1.4.1.tar.gz
# cd gateway-1.4.1
# configure –prefix=/usr/local/kannel
# make
# make install

2. Konfigurasi
ada beberapa bagian konfigurasi kannel semua di letakkan di file smskannel.conf.

Bagian The core Group :

group = core
admin-port = 13000
smsbox-port = 13001
admin-password = bar
#log-file = “/tmp/kannel.log”
#log-level = 0
box-deny-ip = “*.*.*.*”
box-allow-ip = “127.0.0.1”

Bagian The smsc Group :

group = smsc
smsc = at
modemtype = auto
device=/dev/ttyS0
my-number = 123123123123
connect-allow-ip = 127.0.0.1
log-level = 0

Bagian The smsbox Group :

group = smsbox
bearerbox-host = 127.0.0.1
sendsms-port = 13013
global-sender = 123123123123
log-level = 0

Bagian The Sendsms Group :

group = sendsms-user
username = kanneluser
password = df89asj89I23hvcxSDasdf3298jvkjc839
concatenation= true
max-messages = 10

group = sms-service
keyword =
keyword-regex = .*
catch-all = yes
max-messages = 0
get-url = “http://localhost/sms?phone=%p&text=%a”

Disini kannel akan mengarahkan setiap ada pesan sms yang masuk akan di arahkan ke localhost dengan variabel phone = no. telp dan text = isi sms. Dari sini kita tinggal membuat aplikasi php yang nantinya untuk menjawab sms yang telah masuk, bisa juga jawaban sudah di simpan di mysql.

max-messages =0 bertujuan agar kaneel tidak langsung otomatis me reply sms yang masuk, apabila nilai selain 0 akan selalu meriply dengan jawaban ‘<Empty reply from service provider>’.

Jangan lupa mengincludekan setting modem gsm atau kalau anda pake hp juga ngak masalah

include = “/usr/local/kannel/modems.conf”

3. Running Server

Untuk menjalankan service kannel dengan cara :

# cd /usr/local/kannel
# sbin/bearerbox -v 0 smskannel.conf &
# sbin/smsbox -v 0 smskannel.conf &

4. Kirim Messages dari Kannel

Saya menggunakan aplikasi PHP untuk membuat script kirim sms ini.
Syarat modul yang harus aktif di PHP : iconvallow_url_fopen = On

Ini dia fungsi yang saya buat :

function sendSmsMessage($in_phoneNumber, $in_msg)
{
$url = ‘/cgi-bin/sendsms?username=’ . CONFIG_KANNEL_USER_NAME
. ‘&password=’ . CONFIG_KANNEL_PASSWORD
. ‘&charset=UCS-2&coding=2’
. “&to={$in_phoneNumber}”
. ‘&text=’ . urlencode(iconv(‘utf-8’, ‘ucs-2’, $in_msg));

$results = file(‘http://’
. CONFIG_KANNEL_HOST . ‘:’
. CONFIG_KANNEL_PORT . $url);
}

Selesai deh, selamat mencoba 🙂