Top Banner
 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 
17

Implementasi Sms Gateway Dengan Kannel

Apr 12, 2018

Download

Documents

Welcome message from author
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.
Transcript
Page 1: Implementasi Sms Gateway Dengan Kannel

7/21/2019 Implementasi Sms Gateway Dengan Kannel

http://slidepdf.com/reader/full/implementasi-sms-gateway-dengan-kannel 1/17

IMPLEMENTASI SMS GATEWAY DENGAN KANNEL

DAN MODEM WAVECOM

Hary Cahyono

wordpress.com, tifosilinux

Email : [email protected] 

[email protected]

  egitu banyak referensi mengenai smsgateway dengan berbagai

  third party yang digunakannya, dengan hobi didunia !inux"#$%&

  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 

Page 2: Implementasi Sms Gateway Dengan Kannel

7/21/2019 Implementasi Sms Gateway Dengan Kannel

http://slidepdf.com/reader/full/implementasi-sms-gateway-dengan-kannel 2/17

Pendahuluan

'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

Page 3: Implementasi Sms Gateway Dengan Kannel

7/21/2019 Implementasi Sms Gateway Dengan Kannel

http://slidepdf.com/reader/full/implementasi-sms-gateway-dengan-kannel 3/17

smsc

group 7 core

admin6port 7 2AFFF

admin6password 7 harysmatta

status6password 7 probolinggo

admin6deny6ip 7 I.I.I.I

admin6allow6ip 7 23J.F.F.2

smsbox6port 7 2AFFA

;wapbox6port 7 2AFF4 ; $ot needed wap right now

 box6deny6ip 7 I.I.I.I

 box6allow6ip 7 23J.F.F.2

log6file 7 "ar"log"kannel"kannel.log

log6leel 7 2

access6log 7 "ar"log"kannel"kannel.access

;unified6prefix 7 AKL, FFAKL, F, , FF

;white6list 7 http:""localhost"whitelist.txt

store6file 7 "ar"log"kannel"kannel.store

group 7 smsbox

 bearerbox6host 7 23J.F.F.2

sendsms6port 7 2AF2A

sendsms6chars 7 F23A4KMJLN 6

log6file 7 "ar"log"kannel"smsbox.log

log6leel 7 F

access6log 7 "ar"log"kannel"sms6access.log

global6sender 7 M3L22FFFFF

; blacklist 7 http:""localhost"sms"blacklist.txt

group 7 smsc

smsc 7 at

host 7 23J.F.F.2

smsc6id 7 test

;modemtype 7 auto

modemtype 7 waecom

deice 7 "de"tty#'F

speed 7 22K3FF

;alidityperiod 7 2MJ

;keepalie 7 2F

; pin 7 2A24 ; 877 used by )'(

sim6buffering 7 true

sms6center 7 M3L22FFFFF

my6number 7 M3LKA22JM2N2L

;my6number 7 M3L2A2MJM44MK

; (obile phone configuration

group 7 modems

id 7 *EC1(

name 7 waecom

detect6string 7 *EC1(

Page 4: Implementasi Sms Gateway Dengan Kannel

7/21/2019 Implementasi Sms Gateway Dengan Kannel

http://slidepdf.com/reader/full/implementasi-sms-gateway-dengan-kannel 4/17

;detect6string 7 *+ ; #se this if ure set modemtype as automatic on group smsc

init6string 7 *+OF 2 E2 'F7F PC2 P?3 BC!*''7F

;init6string 7 *+C(EE73QC$(%7A,2,F,F,F

;init6string 7 *+C$(%73,2,3,3,F

;keepalie6cmd 7 *+CCQC'O

;message6storage 7 sm

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; <%B= '(' Connection with '(00 as a protocol

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; group 7 smsc >m5 ;

; smsc 7 smpp >m5 ;

; host 7 2F.2NK.J.L ; +hisi is using 0$ managed by pn box in order to connect to telco ipaddress9serer

'(' CE$+ER ;

; port 7 4A33 ;

; receie6port 7 4A33 ; +his is port including %0 in order to connect to telco ;

; smsc6username 7 passinds ; 0roided by telco ;

; smsc6password 7 smpassdf ; 0roided by telco ;

; system6type 7 +C0 ;

; interface6ersion 7 AA ;

; address6range 7 NJNF ; C0 " Content 0roiders 'hortcode proided by telco ;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

group 7 sendsms6user 

username 7 telkomsel

 password 7 telkomsel

max6messages 7 K

concatenation 7 true

; 666 'ER%CE' 666

; 66 Bind these with your own docs from telco 66

; added new parameters :

; Sk 66 keyword

; Sp 66 #ser $umber 'ender 

; S0 66 #ser $umber Receier 

; St 66 +ime sender 

; S+ 66 transactionid

; S? 66 meta6data, forwarded from 1perator >&! reDuest5

group 7 sms6serice

keyword 7 default

;keyword 7 reg

; get6url 7 http:""2N3.2ML.F.2F3:ANJNF"mo"index.phpGsmscid7SiPmsisdn7SpPto7S0Psms7

SaPtrx9date7StPtid7S+Pmeta7S? ; >c5 #R! came from program or 

; script will be execute if the keyword match with text gateway receied by. #sing )E+ method in #R!

8777 +he highest one of hierarchy response text

; 0arameter get6url dibawah akan mengembalikan reply couldnt fetch content

;get6url 7 http:""localhost"playsms"plugin"gateway"kannel"geturl.phpGt7StPD7SDPa7Sa

;get6url 7 http:""localhost"mo"getting.phpGtext7SbPsender7Sp

Page 5: Implementasi Sms Gateway Dengan Kannel

7/21/2019 Implementasi Sms Gateway Dengan Kannel

http://slidepdf.com/reader/full/implementasi-sms-gateway-dengan-kannel 5/17

get6url 7 http:""localhost"mo"gettings.phpGsender7SpPto7S0Ptext7SbPtime7St

;get6url 7 http:""localhost"mo"receied.phpGsender7SpPtext7Sb

max6messages 7 A

;text 7 0endaftaran (ahasiswa aru

;;;group 7 sms6serice

;;;keyword 7 %$B1

; post6url 7 ; as same as get6url with different method 01'+ 8777 +he highest one of hierarchy response

text

;;;file 7 "home"hary"info.txt

; /annel helps you to store deliery reports

group 7 mysDl6connection

id 7 mydlr 

id 7 dlr6db

host 7 localhost

username 7 kannel

 password 7 kannel

database 7 kannels

max6connections 7 2

group 7 dlr6db

id 7 dlr6db

table 7 dlr 

field6smsc 7 smsc

field6timestamp 7 ts

field6source 7 source

field6destination 7 destination

field6serice 7 serice

field6url 7 url

field6status 7 status

field6mask 7 mask 

field6boxc6id 7 boxc

;group 7 sms6serice

;keyword 7 Reg

;text 7 'elamat anda terdaftar di layanan info %+. ?an tidak dapat berhenti berlangganan. :5:5 C' :

FLKMNF434LN

?ari konfigurasi diatas, sistem mengabaikan hashtag dan kita bisa membacanya sebagai

sebuah informasi. 'emua konfigurasi dan ('%'?$ #$E$AS %NT%K DILI&AT :'()

?idalam informasi tersebut, saya uga memberikan gambaran bagaimana ika shortcode

yang digunakan untuk kepentingan business corporate,  adinya tidak dengan

menggunakan msisdn pribadi >kamu bisa lihat6lihat di fitur busness di laman

http:""tifosilinux.wordpress.com5. +inggal disesuaikan pada parameter :

Page 6: Implementasi Sms Gateway Dengan Kannel

7/21/2019 Implementasi Sms Gateway Dengan Kannel

http://slidepdf.com/reader/full/implementasi-sms-gateway-dengan-kannel 6/17

global6sender 7 M3L22FFFFF, dan

sms6center 7 M3L22FFFFF

/arena saya menggunakan operator telkomsel, maka pusat dari pesan saya ruuk ke

M3L22FFFFF dan M3L22FFFFF untuk global6sender yang artinya, setiap nomor yang

diterima ke user >sebagai balasan dari sms (+ yang telah dikirim5 akan menggunakannomor M3L22FFFFF.

/emudian, pada group sms6serice kita bisa melakukan aktifasi ika menginginkan

sistem melakukan reply secara otomatis. +inggal kita masukkan keyword dan text nya

sebagai reply atas keyword yang telah dikirim dari si sender. /annel sebagai receiver

 uga dapat melakukan custom reply pada get6url >bisa uga menggunakan post6url dsb5

dimana keyword tertentu yang telah di hardcode atau ter6register sebelumnya akan

melakukan reply sesuai trigger yang telah di register. 'yaratnya set keyword ke nilai

default terlebih dahulu. ?alam hal melakukan dailypush >dimana user ter register dahulu

didalam sistem basis data untuk kemudian dikirimkan (+ '(' >ter charge ataupun

tidak55, kita perlu menyiapkan parameter #R% berikut :

http:""23J.F.F.2:2AF2A"cgi6bin"sendsmsG

username7telkomselPpassword7telkomselPto7FLKMNKF434LNPtext7%si'('yangi

ngindikirim

#ntuk hubungan langsung /annel ke (y'O! guna meyimpan ?!R > Delivery Report 5

tidak akan saya bahas dan kamu bisa mendapatkan referensinya sendiri di internet. Tika

 setting dan test berhasil, kamu akan mendapati logging-logging sebagai berikut :

Page 7: Implementasi Sms Gateway Dengan Kannel

7/21/2019 Implementasi Sms Gateway Dengan Kannel

http://slidepdf.com/reader/full/implementasi-sms-gateway-dengan-kannel 7/17

S*ula" Tran"a+"

'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.

+empatkan script sesuai document root kamuQ

8Gphp

"" %nititated by Harysmatta

mysDl9connect>localhost, kannel, kannel5Q

mysDl9select9db>kannels5Q

""http:""localhost"mo"gettings.phpGsender7SpPto7S0Ptext7SbPtime7St

""http:""localhost"mo"gettings.phpGsender7FN3AF3A3Pto723233A3Ptext7?1*Ptime7FN23L3N23

Umsgfrom 7 U9)E+<sender=Q

Umsgto 7 U9)E+<to=Q

Umsgtimestamp 7 U9)E+<time=Q

Usc9keyword 7 U9)E+<text=Q

""1r you can using :

""Usc9keyword 7 UH++09)E+9*R'<text=Q

Page 8: Implementasi Sms Gateway Dengan Kannel

7/21/2019 Implementasi Sms Gateway Dengan Kannel

http://slidepdf.com/reader/full/implementasi-sms-gateway-dengan-kannel 8/17

"" *oiding these nested Duery if u can Q5

Uprice9mapping 7 select b.charging9alue as price from charging b where b.id in>select c.charging9id from

serice9charging9mapping c where c.serice9id 7 >select a.id from serice a where a.serice9name 7

Usc9keyword 55Q

Ukey9price9mapping 7 mysDl9Duery>Uprice9mapping5Q

while>Uresult2 7 mysDl9fetch9array>Ukey9price9mapping55V

  Uprice 7 Uresult2<price=Q

W

"" (obile 1riginating like

Uinserting9(1 7 mysDl9Duery>insert into tbl9msgtransacts >(')BR1(, (')+1, (')?*+*, 0R%CE,

(')+%(E'+*(0, '#TEC+, 10ER*+1R5 alues>Umsgfrom, Umsgto, Usc9keyword, Uprice,

Umsgtimestamp, (1Q0#!!Q+E&+, +'E!55Q

Ukeyword9Duery 7 select description from serice where serice9name 7 Usc9keywordQ

Ukey9Duery7mysDl9Duery>Ukeyword9Duery5Q

while>Uresult37mysDl9fetch9array>Ukey9Duery55V

  Umsgdata 7 Congrats : .Uresult3<description=.Q

  echo Congrats : .Uresult3<description=.Q

W

"" (obile +erminating like

Uinserting9(+ 7 mysDl9Duery>insert into tbl9msgtransacts >(')BR1(, (')+1, (')?*+*, 0R%CE,

(')+%(E'+*(0, '#TEC+, 10ER*+1R5 alues>Umsgto, Umsgfrom, Umsgdata, Uprice, Umsgtimestamp,

(+Q0#!!Q+E&+, +'E!55Q

'esuaikan koneksi ke (y'O! kamu, sebenarnya bisa menggunakan 0?1 ika ? ype

yang digunakan berlainan enis. !cript akan mengambil ariabel pada url kemudian

melakukan pengecekkan pada tabel6tabel yang digunakan saat inserting service

>disarankan kamu membuat service register terlebih dahulu seperti screenshoot diatas5.

!cript akan mencocokkan price sesuai dengan keyword >dalam hal ini kita analogikan

sebagai  service5 dan akan melakukan inserting as a "# and ". /ita bahkan bisa

menambahkan status ataupun $losereason dari setiap message, namun belum sempat

saya lakukan. ?an bisa saa kamu memperluas konsep diatas.

/ita bisa melihat setiap transaksi diatas pada table tbl%msgtransacts yang kita siapkan

sebelumnya, berikut screenshoot nya:

Page 9: Implementasi Sms Gateway Dengan Kannel

7/21/2019 Implementasi Sms Gateway Dengan Kannel

http://slidepdf.com/reader/full/implementasi-sms-gateway-dengan-kannel 9/17

'ilahkan kamu buat sendiri (1 raffic sebagai tools complement transaksi diatas Q5

SMS Alert 

%baratkan begini, kita seorang business analyst.. dan melakukan sebuah perencanaan

 pada setiap $ontent &rovider untuk menalankan campaign sebagai activity sales nya.

/ita menalankan sebuah aplikasi dari endor dimana mulai dari menentukan tipe

layanan yang dialankan, range waktu hingga telco mana yang dipilih, namun satu hal..

tidak ada notifikasi pesan ke 'ccount (ngineer )'(* sebagai perwakilan C0 dan !ystem

 'dministrator serta  "onitoring eam nya. ahwa telah dialankan sebuah campaign

dengan range waktu tertentu dan di setiap telco dan C0 mana saa campaign telah

 beralan hingga selesai.

Tadi yang kita harapkan ada sebuah aktifitas tambahkan untuk mengirimkan notifikasi ke

!ystem 'dministrator serta  "onitoring eam. 'ebuah analogi kembali saya coba

 perlihatkan:

Page 10: Implementasi Sms Gateway Dengan Kannel

7/21/2019 Implementasi Sms Gateway Dengan Kannel

http://slidepdf.com/reader/full/implementasi-sms-gateway-dengan-kannel 10/17

/arena hal ini berkaitan dengan mengirimkan pesan notifikasi dan sedikit banyak

menentukan dalam membuat keputusan bisnis, maka kita perlu membuat  priviliges

 berupa sebuah  session. Bile6file yang dibutuhkan adalah trigger.sh, triggering.sh,

cekpswd.php, login.html, logout.php, sign.php, sorry.html, green.png, red.png, exec2

s.d. execN.sh serta 'end'('.php. +entu file6file tersebut penamaannya bisa

disesuaikan.

1ke, diperelas.. contoh sample hierarki direktorinya sebagai berikut:"ar"www"html"'end'('.php

"ar"www"html"support"cekpswd.php

"ar"www"html"support"login.html

"ar"www"html"support"logout.php

"ar"www"html"support"sign.php

"ar"www"html"support"sorry.html

"ar"www"html"support"green.png

"ar"www"html"support"red.png

"home"hary"script"trigger.sh

"home"hary"script"triggering.sh

"home"hary"script"exec26N.sh

Se,a!a -a.a.an/ "aya .da+ a+an *e*,er+an de.al D$ dan table-table yan!

d!una+an hn!!a field-field nya/ na*un +a*u ,"a *e*enuh +e,u.uhan .er"e,u.

Page 11: Implementasi Sms Gateway Dengan Kannel

7/21/2019 Implementasi Sms Gateway Dengan Kannel

http://slidepdf.com/reader/full/implementasi-sms-gateway-dengan-kannel 11/17

den!an *e*,a-a script )

/emudian kita breakdown isi setiap scriptQ

0Lo!n)h.*l1

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

http:""localhost"'end'('.php

0SendSMS)2h21

Page 12: Implementasi Sms Gateway Dengan Kannel

7/21/2019 Implementasi Sms Gateway Dengan Kannel

http://slidepdf.com/reader/full/implementasi-sms-gateway-dengan-kannel 12/17

8Gphpsession9start>5Qif>Xisset>U9'E''%1$<login=55V  include>"ar"www"html"support"login.html5QWelseVmysDl9connect>localhost, kannel, kannel5QmysDl9select9db>kannels5Q

echo 8html8head8title+ifosi!inux ordpress8"title8"head8bodyQecho 8article style7width:4FSQfloat:leftQmargin:F AFSQ "Q

echo 8di style7border: 3px solid greenQ height: AJFpxQ padding: KpxQ text6align: leftQ width: 4AFpxQ8form method7post action7'end'('.php8table border7F width74AFpx8tr  8td  8bC0 A+inggi8"b8br  8input type7checkbox alue70ro&!2 name70ro&!20ro&!8br  8input type7checkbox alue7%ndosat2 name7%ndosat2%ndosat8br  8input type7checkbox alue7+'E!2 name7+'E!2+elkomsel8br8br  8bC0 0assindonesia8"b8br

  8input type7checkbox alue70ro&!3 name70ro&!30ro&!8br  8input type7checkbox alue7%ndosat3 name7%ndosat3%ndosat8br  8input type7checkbox alue7+'E!3 name7+'E!3+elkomsel8br8br  8bC0 -attaEra8"b8br  8input type7checkbox alue70ro&!A name70ro&!A0ro&!8br  8input type7checkbox alue7%ndosatA name7%ndosatA%ndosat8br  8input type7checkbox alue7+'E!A name7+'E!A+elkomsel8br8br  8"td  8td  8b?uration of Campaign8"b8br  8select name7hour  8option selected7selectedHour8"optionQ  for>Ud7FQ Ud8734Q Ud725Vecho 8option alue7UdUd8"optionQ  W  echo 8"selecthour   8select name7minute

  8option selected7selected(inute8"optionQ  for>Uc72Q Uc87MFQ Uc725V  echo 8option alue7UcUc8"optionQ  W  echo 8"selectminute"s  8br8br8b'tatus8"b8brQ  echo 8iframe src7http:""localhost"support"sign.php height723F width723F8"iframeQ  echo 8"td8"tr8"tableQ

"I Bor Example I"if >isset>U901'+<0ro&!2=55V  "" echo U901'+<0ro&!2=.8br "Q

  shell9exec>"home"hary"script"exec2.sh5QWif >isset>U901'+<0ro&!3=55V  "" echo U901'+<0ro&!3=.8br "Q  shell9exec>"home"hary"script"exec3.sh5QWif >isset>U901'+<0ro&!A=55V  "" echo U901'+<0ro&!A=.8br "Q  shell9exec>"home"hary"script"execA.sh5QWif >isset>U901'+<%ndosat2=55V

Page 13: Implementasi Sms Gateway Dengan Kannel

7/21/2019 Implementasi Sms Gateway Dengan Kannel

http://slidepdf.com/reader/full/implementasi-sms-gateway-dengan-kannel 13/17

  "" echo U901'+<%ndosat2=.8br "Q  shell9exec>"home"hary"script"exec4.sh5QWif >isset>U901'+<%ndosat3=55Vshell9exec>"home"hary"script"execK.sh5QWif >isset>U901'+<%ndosatA=55V  "" echo U901'+<%ndosatA=.8br "Q  shell9exec>"home"hary"script"execM.sh5QWif >isset>U901'+<+'E!2=55V  "" echo U901'+<+'E!2=.8br "Q  shell9exec>"home"hary"script"execJ.sh5QWif >isset>U901'+<+'E!3=55V  "" echo U901'+<+'E!3=.8br "Q  shell9exec>"home"hary"script"execL.sh5QWif >isset>U901'+<+'E!A=55V  "" echo U901'+<+'E!A=.8br "Q  shell9exec>"home"hary"script"execN.sh5Q

W"I Bor Example I"""if >U901'+<hour= X7 Hour PP U901'+<minute= X7 (inute5if >U901'+<hour= X7 Hour PP U901'+<minute= X7 (inute5V  UH1#R 7 U901'+<hour=Q  U(%$#+E 7 U901'+<minute=Q  mysDl9Duery>+R#$C*+E +*!E YkannelsY.YtriggerY5Q  mysDl9Duery>%$'ER+ %$+1 YkannelsY.YtriggerY >YidY, YhourY, YminuteY, YstatusY, YlaststatusY5 *!#E' >$#!!, UH1#R,U(%$#+E, is*ctie, set55Q  echo 'chedule has been set8brQWelseV  echo 8b$oted : 8"b'chedule P ?uration of Campaign cant be empty8brQW

echo 8input type7submit alue7'ubmit name7submit8a href7http:""localhost"support"logout.php!ogout8"a8"di8"body8"htmlQ

%frame digunakan untuk menampilkan status secara realtime dengan menggunakan file

sign.php dengan (E+* refresh untuk melihat kondisi campaign. )unakan file green.png

untuk status aktif dan red.png ketika status finish. 'tatus  dipicu oleh isi dari table

trigger pada  field status dan laststatus. 'hell  script yang bertugas untuk melakukan

action nya, yakni trigger.sh yang kita set pada cronobs untuk pengecekkan setiap saat.

/emudian  script ini akan otomatis melakukkan update waktu cronobs untuk filetriggering.sh

0.r!!er)"h1

;X"bin"bash; 'etup this script with all wildcards : I I I I I "home"hary"script"trigger.sh

check7YmysDl 6hlocalhost 6ukannel 6pkannel kannels 6e select laststatus from kannels.trigger order by id desc limit 2 Z grep 6laststatusY

if << Ucheck 77 set ==Q

Page 14: Implementasi Sms Gateway Dengan Kannel

7/21/2019 Implementasi Sms Gateway Dengan Kannel

http://slidepdf.com/reader/full/implementasi-sms-gateway-dengan-kannel 14/17

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

0.r!!ern!)"h1

;X"bin"bash

;number27FLKMNKF434LNnumber37FL2A2MJM44MK

time7Ydate SH:S(Y

;links 6dump http:""23J.F.F.2:2AF2A"cgi6bin"sendsmsGusername7telkomselPpassword7telkomselPto7Unumber2Ptext7%nfo:CampaignhasbeenstopatUtimeaclocklinks 6dump http:""23J.F.F.2:2AF2A"cgi6bin"sendsmsGusername7telkomselPpassword7telkomselPto7Unumber3Ptext7%nfo:CampaignhasbeenstopatUtimeaclock

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

;links 6dump http:""23J.F.F.2:2AF2A"cgi6bin"sendsmsGusername7telkomselPpassword7telkomselPto7Unumber2Ptext7%nfo:telco0ro&!diA+inggisedangcampaignlinks 6dump http:""23J.F.F.2:2AF2A"cgi6bin"sendsmsGusername7telkomselPpassword7telkomselPto7Unumber3Ptext7%nfo:telco+elkomseldiA+inggisedangcampaignuntukUhouramUminuteminute

echo date SH:S(:S' "tmp"!1))%$).txt

;links 6dump http:""23J.F.F.2:2AF2A"cgi6bin"sendsmsGusername7telkomselPpassword7telkomselPto7Unumber2Ptext7%nfo:

telco+elkomseldiA+inggisedangcampaign

%si message diatas bisa dirubah sesuai kebutuhan.

0"orry)h.*l1

8H+(!8HE*?8+%+!E 'orry 8"+%+!E8"HE*?81?-8article style7width:4FSQfloat:leftQmargin:F AFSQ "8b #sername ato password anda ndak bener8"b8br

Page 15: Implementasi Sms Gateway Dengan Kannel

7/21/2019 Implementasi Sms Gateway Dengan Kannel

http://slidepdf.com/reader/full/implementasi-sms-gateway-dengan-kannel 15/17

8a href7http:""localhost"support"login.html ack 8"a8"1?-8"H+(!

0lo!ou.)2h21

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

terbentuk.

0"!n)2h21

8Gphp

mysDl9connect>localhost, kannel, kannel5QmysDl9select9db>kannels5Q

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:

Page 16: Implementasi Sms Gateway Dengan Kannel

7/21/2019 Implementasi Sms Gateway Dengan Kannel

http://slidepdf.com/reader/full/implementasi-sms-gateway-dengan-kannel 16/17

Page 17: Implementasi Sms Gateway Dengan Kannel

7/21/2019 Implementasi Sms Gateway Dengan Kannel

http://slidepdf.com/reader/full/implementasi-sms-gateway-dengan-kannel 17/17

7eferen"

/annel cs63FFAFNF2 #ser\s )uide, 1pen 'ource *0 and '(' gateway *ndreas Bink

Chairman P C+1, )lobal $etworks %nc. [email protected], http+www.smsrelay.com,

http+www.gni.ch, runo Rodrigues, [email protected] , http+litu.orgbruno

I5 'emuanya ditulis diatas sistem !inux 1pen'u'E 22.3 Emerald, 1pen1ffice A.2.2, dia

F.NJ. dan 1kular F.N.K