IMPLEMENTASI SMS GATEWAY DENGAN KANNEL DAN MODEM W A VECOM Hary Cahyono wordpress.com, tifosilinux Email : [email protected][email protected]Begitu banyak referensi mengenai smsgateway dengan berbagai third party yang digunakannya, dengan hobi didunia Linux/UNIX dan niat menambah referensi implementasi dengan kannel, maka saya iseng membuat tulisan ini. Now being developed further by the open source community, namely the Kannel Group. Keyword : Guide Kannel
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
'udah terlalu banyak referensi yang memuat !inux beserta kannel sebagai '(')*+E*- nya. 'ekarang saya coba membagi seperti apa sih implementasinya ika
perusahaan" corporate atau bahkan personal menginginkan business dengan !inux
beserta /annel. Ekspektasi nya selalu diarahkan kepada hal yang sifatnya untuk
pemanfaatan ke arah positif. (ampu meraih optimalisasi business walaupun tetap
membawa lisensi )0!. (embuat business mudah dalam melakukan analisis dan
membuat Decision.
Konf!ura" Kannel
'emuanya dirancang bangun diatas sistem !inux 1pen'u'E 22.3 Emerald dan
menggunakan modem *EC1( dimana saya hanya akan memberikan point-point
nya saa karena sudah banyak referensi ika kita mencoba mencari di luar sana. 0asti
tidak akan memenuhi kebutuhan informasi kamu :5 oleh karena itu saya coba
mencantumkan alamat email diatas. iasanya kita ruuk ke path "etc"kannel" namun akan
berbeda ika kamu melakukan kompilasi secara custom pada 66prefix7"8path9directory"
, berikut konfigurasi yang saya gunakan:
; Custom Config, %nitiated by Hary on tifosilinux.com
; :5 Check these out
;
; %n case we are using *EC1( as a modem to implementing this topologys : <public user, H0=86666
><'('C, +elco=866send sms66<(odem or H0=586666</annel '(' )ateway=86666<?atabase 'erer or
Content 'erer=
; e hae to know A points of /annel which is important to configure like mandatory >m5, optional >o5, and
conditional >c5, then
; *s we know it hae A things to understand : bearerbox as connection handler between smsbox and>to5smsc, smsbox as management function on kannel sms gateway, and wapbox as wap as connection
; Bour group 2 group modem reDuired by group core such as )roup smsbox, smsc, sendsms6user,
smsserice, and modem
; ?iided by 4 log6leel to describes, F : !eel debug, 2 : info, 3 : warning, A : error, 4 : panic
;
; $oted : /annel '(' )ateway can be control" managed by H++0 interface, like http:""localhost:8admin6
port"shutdownGpassword78admin6password
; hich is the 8password on url aboe could be changed with status, suspend, resume, start6smsc, and stop6
'ekarang kita coba memperelas hal ini dengan membuat scripting yang amat sangat
sederhana dengan 0H0 dan koneksi (y'O!. /onsepnya begini:
'ebagai penyelia konten terhadap client, kita memutuhkan sebuah tools yang dapat
melakukan registrasi services atau layanan beserta nilai charging, isi konten, sertadeskripsi dari layanan tersebut. ?idalam sistem butuh sebuah trigger guna mencocokkan
antara layanan dengan nilai charging. #ntuk script bisa kamu download di
tifosilinux.wordpress.com, berikut screenshot nya :
Tika sudah mengerti arahnya, kita amati script get6url untuk mendapatkan reply sms
sesuai dengan yang diharapkan. Bile mengacu pada parameter get6url yang digunakan.
8html8head8title!ogin dulu8"title8"head8body8article style7width:4FSQfloat:leftQmargin:F AFSQ "8b!ogin untuk user yang sudah terdaftar sebelumnya 8"b8pre8form name7frm!og%n (E+H1?7post *C+%1$7"support"cekpswd.php#sername : 8%$0#+ +-0E7text $*(E7uname0assword : 8%$0#+ +-0E7password $*(E7pswd8%$0#+ +-0E7submit *!#E7'ubmit8"form8"pre8"body8"html
!cript menggunakan method post pada attribute nya dan menggunakan nama frm!ogindimana membutuhkan file cekpswd.php guna pengecekkan.
0-e+2"wd)2h21
8Gphp"II 'ession started by Harys(atta on tifosilinux.wordpress.comII"session9start>5QUuname 7 U901'+<uname=QUpswd 7 sha2>U901'+<pswd=5QUhost 7 localhostQUuser 7 rootQ
Upwd 7 QUdb 7 loginQUsDl 7 select I from member where uname7UunameQ
Uconn 7 @mysDl9connect>Uhost, Uuser, Upwd5 or die>/oneksi gagal : . mysDl9error>55QmysDl9select9db>Udb5QUDry 7 mysDl9Duery>UsDl5 or die>Ouery salah : . mysDl9error>55QUnum 7 mysDl9num9rows>UDry5QUrow 7 mysDl9fetch9array>UDry5Qif >Unum77F 1R UpswdX7Urow<pswd=5V header>!ocation: "support"sorry.html5QWelseV U9'E''%1$<login=72Q header>!ocation: http:""localhost"'end'('.php5QWG
?isinilah session kita buka menggunakan fungsi session9start>5Q dan melakukan
pengecekkan ika username dan password sudah di insert secara manual atau belum.
?engan segala detail nya mulai dari koneksi dan pengambilan value dari method 01'+
yang digunakan, ika login berhasil akan di redirect ke halaman
then menit7Ycrontab 6l Z grep triggering.sh Z awk Vprint U2WY am7Ycrontab 6l Z grep triggering.sh Z awk Vprint U3WY
hour7YmysDl 6hlocalhost 6ukannel 6pkannel kannels 6e select hour from kannels.trigger order by id desc limit 2 Z grep 6hourY minute7YmysDl 6hlocalhost 6ukannel 6pkannel kannels 6e select minute from kannels.trigger order by id desc limit 2 Z grep 6minuteY
final9minute7Ydate 66date7Uminute minutes S(Y final9hour7Ydate 66date7Uhour hour SHY sed 6i s"Umenit Uam [I [I [I ["home["hary["script["triggering.sh"Ufinal9minute Ufinal9hour [I [I [I["home["hary["script["triggering.sh" "ar"spool"cron"tabs"root mysDl 6hlocalhost 6ukannel 6pkannel kannels 6e #0?*+E kannels.trigger set laststatus7unset where laststatus7setfi
mysDl 6hlocalhost 6ukannel 6pkannel kannels 6e #0?*+E kannels.trigger set status7is?ie where status7is*ctie
/ita uga membutuhkan file6file exec sebagai action apabila value dari 01'+ sesuai
dengan kondisi, file menggunakan parameter url untuk mengirimkan pesan.
0e3e-4)"h 5 e3e-6)"h1
;X"bin"bash
;number27FLKMNKF434LNnumber37FL2A2MJM44MK
hour7YmysDl 6hlocalhost 6ukannel 6pkannel kannels 6e select hour from kannels.trigger order by id desc limit 2 Z grep 6 hourYminute7YmysDl 6hlocalhost 6ukannel 6pkannel kannels 6e select minute from kannels.trigger order by id desc limit 2 Z grep 6minuteY
8G"II 'ession started by Harys(atta on tifosilinux.wordpress.comII"session9start>5Qunset>U9'E''%1$<login=5Qsession9destroy>5Qheader>!ocation: "support"login.html5QG
!cript pada file logout.php diatas akan melepas session yang sebelumnya telah
echo 8(E+* H++06EO#%7REBRE'H C1$+E$+7AQ#R!7http:""localhost"support"sign.phpQUstat7select status from kannels.trigger order by id desc limit 2QUhasil27mysDl9Duery>Ustat5QUhasil37mysDl9fetch9array>Uhasil25Qif>Uhasil3<status= X7 is*ctie5V echo 8img src7http:""localhost"support"red.png8"imgQWelseV echo 8img src7http:""localhost"support"green.png8"imgQW
*khirnya kita bisa lihat kondisi pada tiga screenshoot dibawah ini: