Taryana Suryana. M.Kom, CCNA, YD1JEA Membangun SMS Gateway Dengan Menggunakan Open Source http://www.kannel.org Disampaikan oleh Taryana Suryana. M.Kom, CCNA, YD1JEA taryana@unikomcenter.com
Beberapa hal yang dimiliki Teknologi Informasi Kecepatan proses (kerja) Kemampuan penyimpanan data yang sangat besar. Kemudahan pengaksesan dan pengelolaan data
Sistem Informasi Berbasis SMS Seiring dengan perkembangan teknologi komunikasi mobile, SMS merupakan salah satu cara praktis dan murah untuk mengakses data. Solusi ini ditujukan untuk menjawab kebutuhan komunikasi data secara interaktif untuk peningkatan layanan umum. Beberapa implementasi dari SMSInteraktif yang dapat dikembangkan dan diterapkan dalam bidang pendidikan antara lain Informasi Nilai Via SMS Check Keuangan Informasi PMB Informasi Kampus Registrasi Dan lain-lain
Blok Diagram Sederhana SMS Gateway SMS Center Operator Selular SMS Gateway Sistem Komputer Content / Database server Pemakai HP
Diagram SMS Gateway dengan HP/SMPP SMS Center Operator Selular Publik Pengguna HP HP atau modem Kannel SMS Gateway Sistem Komputer: database server (content server) e-mail dll SMPP TCP/IP
KONFIGURASI kannel.conf # SMSBOX SETUP group = smsbox bearerbox-host = localhost sendsms-port = xxxxx global-sender = 3899 log-file = "/var/log/sms/smsbox.log" log-level = 0 # SEND-SMS USERS group = sendsms-user username = test password = testpassw max-messages = 2 concatenation = true
SMPP CONFIGURATION # SMSC CONNECTIONS group = smsc smsc = smpp host = xxx.xxx.xxx.xxx port = 30007 receive-port = 30007 smsc-username = “user" smsc-password = “password" system-type = "TCP" interface-version = 33 our-host = 222.124.203.57 my-number = 3899
HP CONNECTION # SMSC CONNECTIONS group = smsc smsc = at2 smsc-id = SiemensSE45 modemtype = s45 speed = 19200 device = /dev/ttyS0 validityperiod = 167 keepalive = 10 sim-buffering = true sms-center = "+6281100000" group = modems id = s45 name = "S45" detect-string = "SIEMENS" init-string= "AT+CNMI=1,2,0,0,1" enable-hwhs = "AT\\Q3" keepalive-cmd = "AT+CBC;+CSQ" need-sleep = true
SMS SERVICES No Hp =%p Mengambil no HP group = sms-service keyword = default get-url = "http://localhost/baca/savesms2.php?sender=%p&keyword=%k&fw=%s&sw=%s&sms=%a" #text = "Selamat Datang di UNIKOM-SMS, ketik HELP untuk bantuan pengoperasian atau call 08562143685" #max-messages = 0 keyword = nop text = “Maaf Informasi yang anda perlukan belum tersedia, tnx UNIKOM 4 info call 08562143685" No Hp =%p Mengambil no HP Keyword = %k Mengambil kata paling awal First Word=%s Mengambil kata pertama setelah keyword Message=%a Isi seluruh SMS
Menyimpan SMS <? $tgl= date("d/m/Y H:i:s"); $db = mysql_connect('localhost','root','passwordku'); mysql_select_db('siakad'); if(!$db) { echo 'Tidak dapat terhubung ke database...'; exit; } $query = "insert into sms values ('$sender','$tgl','$keyword','$sms')"; $result = mysql_query($query); $keyw = strtolower($keyword); ?>
Keyword Nilai if($keyw=='nilai') { // Buka Soket ke Host nilaionline.unikom.ac.id (port 80) max 30 menit $fp=fsockopen("nilaionline.unikom.ac.id",80,$errno,$errstr,30); if ($fp) if (!$nim) $nim=""; // Mengambil data berupa HTTP/1.0 pada URI /cari.php? fputs($fp,"GET /sms.php?nim={$fw} HTTP/1.0\r\nHost:nilaionline.unikom.ac.id\r\n\r\n"); // Memasukan hasil soket kedalam Variabel data while ($hasil=fgets($fp,128)) $data.=$hasil; }// Menghapus HEADER $data=eregi_replace("<[^>]\"?[^>]*>"," ",substr($data,strpos($data,"\r\n\r\n"))); // Tulis Data echo substr($data,4). " "; }
Keyword Info dan NOP NOP (No Operation) Keyword tidak dikenal <? if($keyw=='info') { echo "INFO UNIKOM\n\r"; echo "**************\n\r"; echo "Ini adalah layanan 3899 Informasi Akademik\n\r"; echo "UNIKOM BANDUNG - Info Call 08562143685\n\r"; } else echo "Maaf keyword yang anda masukan tidak tersedia, ini adalah layanan sms akademik unikom dengan nomor 3899,terimakasih"; $fp=fopen("LogCari.txt","a+"); fwrite($fp,date("d/M/Y H:i:s")." - $sender - $sms\n"); fclose($fp); ?> NOP (No Operation) Keyword tidak dikenal
Contoh Interface untuk mengirim SMS
Website Unikom SMS - 3899
Interface yang Lain dengan Visual Basic Untuk melihat informasi nilai ujian mahasiswa dalam satu semester, dapat dilakukan dengan cara mengirim SMS, dengan isi, cukup kirim NIM dari mahasiswa yang bersangkutan: misalnya: nilai 10100001 kemudian kirim ke nomor Unikom: 3899 atau ke nomor HP 08562143685, maka setelah SMS terkirim dan diterima di SMS Gateway Unikom, dalam beberapa detik informasi nilai akan dikirim dari server unikom ke no HP yang meminta nilai tadi.
Interface WAP Site Kannel juga dapat di setup agar dapat digunakan untuk menjadi wap server, sehingga user dapat mengakses informasi yang ada di wap server, dengan menggunakan Handphone yang sudah memiliki fasilitas WAP Enable atau GPRS Enable.
TERIMAKASIH