6
BAB II TINJAUAN PUSTAKA
Pada bab II ini akan dibahas beberapa teori dasar untuk menunjang penyelesaian skripsi ini, antara lain : sejarah singkat mengenai tranformasi
perubahan foto ke text, sms, pengertian dari sms gateway, definisi dari database, mengenal database mysql, pengenalan NODEJS.
2.1. Tata Cara Perubahan Foto ke Text
Proses utama dari aplikasi pengiriman foto via sms adalah perubahan foto ke text. Foto hasil jepretan mobile device memiliki tipe data byte array, byte array
tersebut bisa langsung di rubah ke string dengan cara di-encode ke encoding tipe BASE64 . Dengan hanya proses singkat itu untuk foto dengan resolusi 480 x 640
dan 1 satu warna misal: hitam menghasilkan text dengan panjang 7350 atau jika di tranformasi ke jumlah SMS yang akan di kirim maka memerlukan sekitar
49 SMS. Untuk meminimalisasi jumlah sms yang di kirim, aplikasi ini menyediakan fasilitas resize foto menurut kehendak user.
2.2. Sejarah Singkat SMS
SMS merupakan sebuah fasilitas pengiriman pesan yang awalnya disediakan oleh sistem telekomunikasi seluler digital berbasis GSM Global
System For Mobile Comunication. Adapun hal-hal yang secara umum diketahui pengguna dalam melakukan pengiriman sebuah pesan SMS adalah, seorang
pemilik handphone cukup mengetikkan pesan, dan kemudian mengirimkannya kepada nomor yang dituju dengan terlebih dahulu melewati sebuah mekanisme
7
yang dimiliki oleh operator telepon seluler yang disebut sebagai SMS Center dan setelah itu pesan SMS akan diteruskan kepada Handphone penerima.
Penggunan pesan SMS yang distandarisasi oleh ETSI European Telecommunication Standards Institute sebagai dokumen pada GSM 03.40 dan
GSM 03.38 yang bisa berisi text sampai di atas 140 karakter standar karakter umumnya 140 dimana masing-masing karakter dihitung dengan nilai 8 bit
Henry Labordere, A Sms And MMS Interworking In Mobile Networks halaman 20 . Karena SMS adalah berbasis 8 bit, artinya jenis karakter yang boleh
dipergunakan dalam penulisan SMS ini adalah sebanyak 128 jenis karakter. Namun dari jumlah tersebut, beberapa diantaranya tidak dikenali oleh kode ASCII
American Standard Code For Information Interchange pada komputer sehingga, hanya 116 karakter yang dikenali saja yang bisa dipakai.
Adapun subsistem elemen pendukung yang mutlak ada pada layanan SMS adalah:
a. Short Message Entity SME , merupakan tempat penyimpanan dan
pengiriman message yang akan dikirimkan ke MS tertentu. b.
Service Centre SC , bertugas untuk menerima message dari SME dan melakukan forwarding ke alamat MS yang dituju.
c. Short Message Service – Gateway Mobile Switching Center SMS-
GMSC, melakukan penerimaan message dari SC dan memeriksa parameter yang ada. Selain itu GMSC juga mencari alamat MS yang
dituju dangan bantuan HLR, dan mengirimkannya kembali ke MSC yang dimaksud.
8
d. Short Message Service – Interworking MSC SMS – IWMSC ,
berperan dalam SMS Message Origiating, yaitu menerima pesan dari MSC
e. Home Location Register HLR merupakan sebuah database yang
digunakan sebagai tempat penyimpanan permanen data. Bila diminta oleh SMSC, maka HLR dapat memberikan informasi status tujuan
apakah aktif atau tidak. f.
Visitor Location Register VLR merupakan sebuah database tempat menyimpan informasi sementara berisi data pelanggan dari sebuah
HLR yang sedang roaming pada HLR lain. g.
Mobile Switcing Center MSC merupakan sebuah sistem yang melakukan fungsi switching dan mengontrol panggilan telepon dalam
sebuah jaringan komunikasi bergerak. h.
Base Station sistem merupakan kesatuan sistem yang bertanggung jawab mengatur transmisi sinyal elektronik untuk membawa data dari
MSC ke perangkat telepon bergerak. Base Station terdiri dari BSC Base Station Controller dan BTS Base Tranceiver Station.
9
Alur pengiriman SMS pada standar teknologi GSM yang digunakan pada saat ini adalah pada Gambar 2.1 alur pengiriman sms
Gambar 2.1 Alur pengiriman SMS keterangan:
a. BTS - Base Transceiver Station b. BSC - Base Station Controller
c. MSC - Mobile Switching center d. SMSC - Short Message Service Center
Ketika pengguna mengirim SMS, maka pesan dikirim ke MSC melalui jaringan seluler yang tersedia yang meliputi tower BTS yang sedang meng-
handle komunikasi pengguna, lalu ke BSC, kemudian sampai ke MSC. MSC kemudian mem-forward lagi SMS ke SMSC untuk disimpan. SMSC
kemudian mengecek lewat HLR - Home Location Register untuk mengetahui apakah handphone tujuan sedang aktif dan dimanakah handphone
10
tujuan tersebut. Jika handphone sedang tidak aktif maka pesan tetap disimpan di SMSC itu sendiri, menunggu MSC memberitahukan bahwa handphone
sudah aktif kembali untuk kemudian SMS dikirim dengan batas maksimum waktu tunggu yaitu validity period dari pesan SMS itu sendiri. Jika handphone
tujuan aktif maka pesan disampaikan MSC lewat jaringan yang sedang meng- handle penerima BSC dan BTS. Sebenarnya, didalam kebanyakan
handphone dan GSMCDMA modem terdapat suatu komponen wireless modemengine yang dapat diperintah antara lain untuk mengirim suatu pesan
SMS dengan protokol tertentu.
2.2.1. Protokol Dalam SMS.
SMS dikirim dan diterima melalui jaringan wireless. Sudah tentu sebuah jaringan mempunyai protokol yang digunakan sebagai penunjangnya. Protokol
yang sering dipakai oleh SMS adalah sebagai berikut Wicaksono,2007 : a.
SMPP Sohrt Message Peer-to-Peer Protocol Short message protocol peer-to-peer SMPP merupakan sebuah protokol
standar industri yang digunakan dalam pertukaran short message antara external short messaging entity ESME, routing entity RE, dan message Centre MC.
Message Centre merupakan terminologi generik untuk menyebutkan beberapa entitas seperti short message service Centre SMSC, GSM unstructured
supplementary service data USSD server, atau cell broadcast Centre CBC. ESME merupakan entitas yang berada diluar jaringan komunikasi wireless SMS
Forum, 2003. SMPP merupakan sebuah protokol yang berjalan pada lapisan aplikasi, seperti halnya protokol-protokol laindalam konteks komunikasi data dalam
jaringan komputer seperti HTTP, FTP, Rlogin, WAP, dan Iain-lain. Satuan paket
11
data yang dipertukarkan pada lapisan aplikasi dalam protokol SMPP disebut PDU Protocol Data Unit. Dalam protokol SMPP terdapat beberapa macam format PDU
dimana penggunaan masing-masing PDU tersebut harus sesuai dengan fungsinya. Sebagai contoh, untuk mengirim shortmessage, harus digunakan PDU dengan
format submit_sm,deliver_sm,atau data_sm SMS Forum, 2003.
2.2.2. AT Command.
AT-Command biasanya terdapat dalam kebanyakan handphone
GSMCDMA dimana terdapat wireless modemengine yang dapat digunakan untuk melakukan pengiriman sms dengan suatu protokol tertentu. Mode
komunikasi yang digunakan dalam penggunaan AT Command adalah komunikasi serial. Dengan komunikasi serial maka handphone dapat dihubungkan dengan
peralatan lain seperti PC dan mikrokontroler. Dengan digunakannya komunikasi serial maka handphone juga punya nilai baudrate yang berbeda-beda. Biasanya
bernilai 19200 bps Nilai baudrate menentukan kecepatan data yang dapat dikirim dan diterima handphone E.S, Mulyanta , Kupas Tuntas Telepon Seluler,
halaman 35 . Untuk mengetahui nilai baudrate masing-masing handphone kita bisa lihat dari datasheet yang dikeluarkan pabrik pembuatnya. Sekarang kita juga
bisa melihat nilai baudrate dari hyperterminal sebuah PC. Perintah yang bisa ditangani oleh AT Command sangat beragam seperti membaca SMS, menghapus
SMS, mengirim SMS, mematikan handphone dan sebagainya. AT Command tiap- tiap handphone bisa berbeda-beda, tetapi pada dasarnya sama. Beberapa AT
Command yang penting untuk SMS yaitu : a.
AT+CMGS : untuk mengirim SMS.
12
b. AT+CMGL
: untuk membaca SMS. c.
AT+CMGL=0 : menerima SMS baru. d.
AT+CMGL=1 : untuk SMS lama dari inbox. e.
AT+CMGD : untuk menghapus SMS.
AT Command untuk SMS, biasanya diikuti oleh data IO yang diwakili oleh unit-unit PDU E.S, Mulyanta , Kupas Tuntas Telepon Seluler, halaman
55 . Untuk mengetahui semua perintah AT Command dapat dilihat di
spesifikasi produk yang dikeluarkan produsen setiap handphone. Fungsi AT Command adalah atomatisasi dalam berkomunikasi. Berbagai sistem yang
prinsip kerjanya memanfaatkan AT Command diantaranya adalah sms gateway, counter penjualan pulsa otomatis, SMS controler dan sebagainya.
2.2.3. Gammu
Gammu adalah nama sebuah project yang ditujukan untuk membangun aplikasi, script dan drivers yang dapat digunakan untuk semua fungsi yang
memungkinkan pada telepon seluler atau alat sejenisnya. Sekarang gammu telah menyediakan codebase yang stabil dan mapan untuk berbagai macam model
telepon yang tersedia di pasaran dibandingkan dengan project sejenis. Gammu merupakan project yang berlisensi GNU GPL 2 sehingga menjamin kebebasan
menggunakan tool ini tanpa perlu takut dengan masaah legalitas dan biaya yang mahal yang harus dikeluarkan. Gammu mendukung berbagai macam model
telepon seluler dengan berbagai jenis koneksi dan type. www.gammu.org. Adapun keuntungan menggunakan gammu menurut yaitu :
a. Gammu bisa dijalankan di Windows maupun Linux.
b. Banyak device yang kompatibel oleh gammu.
13
c. Gammu menggunakan database MySql, Bisa menggunakan interface
web-based. d.
Baik kabel data USB maupun SERIAL, semuanya kompatibel di Gammu.
2.2.4. SMS Gateway
SMS Gateway adalah suatu platform yang menyediakan mekanisme untuk EUA menghantar dan menerima SMS dari peralatan mobile HP, PDA phone, dll
melalui SMS Gateway’s shortcode. SMS Gateway membolehkan UEA untuk berkomunikasi dengan Telco
SMSC telkomsel, indosat, dll atau SMS platform untuk menghantar dan menerima pesan SMS dengan sangat mudah, Karena SMS Gateway akan
melakukan semua proses dan koneksi dengan Telco. SMS Gateway juga menyediakan UEA dengan interface yang mudah dan standar.
UEA dapat berupa berbagai aplikasi yang memerlukan penggunaan SMS. Seperti berbagai aplikasi web yang telah banyak menggunakan SMS free sms,
pendaftaran, konfirmasi melalui SMS, aplikasi perkantoran, dsb, CMS, acara pengundian di televisi, dll.
UEA melakukan komunikasi dengan SMS Gateway melalui Internet menggunakan standard HTTP GET atau HTTPS untuk komunikasi yang aman.
Telco SMSC akan menghantar pesan SMS tersebut kepada perusahaan SMS Gateway sesuai dengan nomor yang telah disewa dengan menggunakan protokol
yang khusus. Dan berdasarkan keyword yang telah dituliskan pada SMS, maka sistem SMS Gateway akan menghantar SMS tersebut ke URL yang telah
ditentukan. UEA dapat menghantar SMS reply kepada pelanggan melalui SMS
14
Gateway tersebut. Dan UEA dapat menentukan besarnya biaya charging yang akan dikenakan kepada pelanggan. Biasanya telah ditentukan regulasi biayanya
microcharging mechanism, contoh Rp 0 gratis; Rp 500,- ; Rp 1000,- ; Rp2000,- dst.
Suatu perusahaan SMS Gateway biasanya support untuk pesan yang berupa teks, unicode character, dan juga smart messaging ringtone, picture
message, logo operator,dll.
Gambar 2.2. Alur Pengiriman SMS Gateway
Proses pengiriman SMS via SMS Gateway membutuhkan minimal 1 satu alat yang dapat terhubung dengan jaringan operator. Alat tersebut akan di
sambungkan ke komputer pada umumnya koneksi yang di gunakan adalah koneksi USB dan port-nya akan di deteksi oleh aplikasi SMS Gateway.
2.2.5. Keuntungan Menggunakan SMS Gateway
SMS Gateway merupakan pintu gerbang bagi penyebaran Informasi dengan menggunakan SMS. Dapat menyebarkan pesan ke ratusan nomor secara
15
otomatis dan cepat langsung terhubung dengan database nomor-nomor ponsel saja tanpa harus mengetik ratusan nomor dan pesan di ponsel, karena semua
nomor akan diambil secara otomatis dari database tersebut. Selain itu , dengan adanya SMS Gateway, maka dapat mengustomisasi pesan-pesan yang ingin
dikirim. Dengan menggunakan program tambahan yang dapat dibuat sendiri, pengirim pesan dapat lebih fleksibel dalam mengirim berita karena biasanya pesan
yang ingin dikirim berbeda-beda untuk masing-masing penerimanya
2.2.6. Kebutuhan Untuk SMS Gateway
Untuk kebutuhan SMS Gateway tidak terlalu belebihan dan juga fleksibel karena bisa dibuat dengan 1. PC maupun Notebook. Yang mutlak dibutuhkan
adalah sebuah komputer, 2. sebuah ponsel dengan 3. kabel data Kabel berantarmuka serial yang dapat menghubungi ponsel dengan PC atau dapat
munggunakan InfraRed dan piranti lunak sebagai SMS Gateway. Untuk menggunakan InfraRed, maka dibutuhkan sebuah ponsel yang juga memiliki
fasilitas tsb, tapi tidak dianjurkan untuk kebutuhan SMS Gateway karena komunikasi dengan InfraRed tidak terlalu baik jika tergeser gampang putus.
2.2.7. Mekanisme Dalam SMS Gateway
Adapun mekaninsme dalam menjalan SMS Gateway ini adalah dengan cara sebagai berikut :
a. Menerima SMS sesuai dengan keyword yang ditentukan.
b. Melakukan fungsi logik tertentu terhada data-data yang diterima dari
SMS gateway.
16
Mengirimkan informasi kepada user berdasarkan keyword sesuai dengan permintaan.
2.3. Definisi Database.
Secara sederhana database basis data dapat diungkapkan sebagai suatu pengorganisasian data dengan bantuan komputer yang memungkinkan data dapat
diakses dengan mudah dan cepat. Dalam hal ini, pengertian akses dapat mencakup pemerolehan data maupun pemanipulasian data, seperti menambah, mengedit, dan
menghapus data. Manajemen modern mengikutsertakan informasi sebagai sumber daya
penting yang setara dengan sumber daya manusia, uang, mesin, dan material. Informasi adalah suatu bentuk penyajian data yang misalnya Manajer. Bagi pihak
manajemen, informasi merupakan bahan untuk pengambilan keputusan dan selalu dibutuhkan. Oleh karena itu data, proses, serta informasi merupakan satu
kesatuan, dari data lalu diproses dan kemudian menjadi informasi
Gambar 2.3 Data Dan Informasi. Dengan adanya komputer, data dapat disimpan dalam media pengingat
yang disebut hard disk. Dengan media ini, kehadiran kertas yang digunakan untuk
Informasi Proses
Data
17
menyimpan data dapat dikurangi. Selain itu, data menjadi lebih cepat untuk diakses terutama kalau dikemas dalam bentuk database.
2.3.1. Mengenal Database MySQL.
Berikut ini akan dijelaskan mengenai beberapa definisi MYSQL untuk memperjelas pengertian tentang software ini :
a. MYSQL
adalah sistem pengaturan relational database. Suatu relational database, menyimpan data dalam bentuk tabel-tabel
yang kemudian akan diletakkannya semua data dalam satu ruang penyimpanan yang besar.
b. MYSQL
adalah Open Source Software perangkat lunak. Open Source artinya bahwa software tersebut memungkinkan untuk
digunakan dan dimodifikasi oleh siapa saja. c.
MYSQL menggunakan GPL GNU General Public License.
Untuk menentukan apakah seseorang memenuhi persyaratan untuk menggunakan software tersebut dalam situasi yang berbeda. Jika seseorang
merasa tidak nyaman dengan GPL atau ingin menggunakan MYSQL untuk
aplikasi bisnis, maka orang tersebut dapat membeli lisensi yang bersifat komersial.
Adapun beberapa keuntungan dalam menggunakan MYSQL yaitu :
1. Portability Database MySQL berfungsi dengan stabil tanpa kendala,
berarti berlaku pada berbagai sistem operasi seperti Windows, Linux, FreeBSD, Mac OS X Server, Solaris, Amiga, HP-Unix, dan lain-lain.
18
2. Open Source MySQL merupakan database open source gratis, di
bawah lisensi GPL sehingga dapat memperoleh dan menggunakannya secara cuma-cuma tanpa membayar sepersen pun.
3. Multiuser MySQL merupakan database yang dapat digunakan untuk
menangani beberapa user dalam waktu bersamaan tanpa mengalami masalah. Dan memungkinkan sebuah database server MySQL dapat
diakses bersamaan pula. 4.
Performace Tuning MySQL mempunyai kecepatan yang cukup baik dalam menangani query-query sederhana, serta mampu memproses
lebih banyak SQL per satuan waktu. 5.
Column Type Database MySQL didukung dengan tipe data yang sangat kompleks, seperti signedunsigned integer, float, double, char, varchar,
text, blob, data, time, datetime, timestamp, year, set serta enum. 6.
Command dan Functions MySQL server memiliki operator dan fungsi secara penuh yang mendukung perintah SELECT dan WHERE dalam
query
2.4. Pengenalan NODEJS
Nodejs adalah bahasa pemrograman yang di bangun mengunakan “Chrome’s javascript runtime” untuk mempercepat dalam membangun dan
mengembangkan aplikasi berbasis network. Nodejs mengunakan “event-driven” dan non-blocking IO input output yang tidak dibatasi model yang membuat
bahasa pemrograman ini efficient dan handal, sempurna untuk transaksi data secara intensif dan “real-time”. nodejs.org
19
Nodejs merupakan bahasa pemrograman “open-source” berbasis javascript
yang di kembangan oleh perusahaan Joyent, Inc pada tahun 2009. Saat ini nodejs
telah mencapai versi 0.8.20 dan masih terus di kembangkan. Meskipun nodejs belum mencapai versi 1 tapi sudah banyak sekali “framework” dan “library” yang
mempermudah programmer dalam mengembangkan aplikasi berbasis jaringan, di antaranya yang terkenal adalah : Expressjs, socket.io, railwayjs, node-mysql, dll.
2.4.1. Expressjs
Expressjs merupakan middleware framework yang di bangun di atas nodejs dan connect. Expressjs mempermudah programmer untuk mengembangkan
aplikasi dengan bebera fitur penting, di antaranya : session management, http compressing, request dan response static file, routing system dan masih banyak
lagi. Expressjs merupakan framework yang cukup handal dan banyak
framework lain yang memakai expressjs sebagai “core” inti dalam mengembangkan framework-nya, di antaranya: railwayjs, locomotivejs, dll.
2.4.2. Socket.io
Socket.io merupakan salah satu external library yang di “bangun” dengan nodejs. Tujuan pembuatan socket.io untuk menjadikan aplikasi berbasis jaringan
TCP, HTTP menjadi real time www.socket.io. Library ini sepenuhnya gratis dan berbasis javascript.
20
2.4.3. RailwaysJS
RailwaysJS sekarang berganti menjadi CompundJS merupakan nodejs MVC Modal, View, and Controller framework yang berbasis ExpressJS.
Karena dibangun di atas expressjs , hampir semua aplikasi yang menggunakan expressjs bisa berjalan di compoundjs ini.
Di dalam compoundjs ini terdapat ORM Object Relational Maping library yang berguna menerjemahkan atau merubah struktur JSON ke dalam
bentuk query database. Selain itu di compundjs ini terdapat aplikasi unit testing yang memudahkan developer mengembangkan aplikasi.
2.4.4. Node-Mysql
Node-Mysql merupakan konektor yang menghubungkan nodejs server dengan database mysql. Node-mysql merupakan satu dari puluhan mysql konektor
yang di bangun untuk memudahkan developer membuat aplikasi berbasis server menggunakan database mysql.
2.5. PT. ITProvent
ITProvent merupakan suatu perusahaan yang bergerak di bidang teknologi. PT. ITProvent di bangun oleh Eddy Hartanto dan Christian Losari pada April
2011. Fokus PT.ITProvent adalah pengembangan aplikasi berbasis web cloud computing , mobile, dan scalable software. Saat ini PT.ITProvent memiliki
kantor yang terletak di Plaza Graha Famili C3A, Surabaya. Eddy Hartanto salah satu pendiri PT.ITProvent yang menguasai backend
software , seperti : database, performance ,scalability , web service , dan bahasa
21
pemrograman. Eddy Hartanto merupakan lulusan S1 barcelor degree di British Columbia University
dengan jurusan Computer Enginering dan lulusan S2
master degree di Stanford University dengan jurusan Computer Science .
Pendiri PT.ITProvent yang menguasai frontend dan device software adalah Christian Losari. Christian Losari memiliki ke-ahlian yang sangat memadai di
bidang user experience design , graphics design , dan photography. Christian
Losari merupakan salah satu lulusan S1 barcelor degree Simon Fraser University
dengan jurusan Electronics Enginering.
21
BAB III METODOLOGI PENELITIAN
3.1. Analisis Sistem
Perancangan aplikasi pengiriman foto via sms ini pada dasarnya di pergunakana untuk proses survey yang membutuhkan pengiriman data foto secara
up to date tanpa terbatasi lemah-nya sinyal operator selular. Aplikasi pengiriman sms ini untuk saat ini hanya bisa di operasikan
menggunakan mobile device yang operational system-nya berbasis android 4.03 . Sebagai penerima SMS terdapat gammu server dan nodejs server akan bertindak
sebagai generator sms ke foto. Nodejs server juga bertindak sebagai web server yang akan menampilkan hasil generator ke browser.
3.2. Perancangan Sistem
Sub-bab ini akan menjelaskan mengenai proses desain dari aplikasi pengiriman foto via sms yang akan dibuat. Proses desain sistem aplikasi dalam
sub-bab ini akan dibagi menjadi 3 tahapan penting, yaitu: perancangan proses dan perancangan antarmuka.
3.3. Perancangan Proses
Terdapat 2 proses utama dalam perancangan sistem aplikasi ini, antara lain:
1. Mobile proses : Mobile proses memiliki tugas mengambil foto via
mobile device camera. Setelah itu foto hasil kamera itu akan dirubah