APLIKASI SMS BROADCASTER BERBASIS WEB DENGAN PENGATURAN MULTI PERANGKAT SECARA SIMULTAN MENGGUNAKAN METODE MULTI ATRIBUT DECISION MAKING(MADM) Hasyim Asy’ari, Arna Fariza,Wiratmoko Yuwono Jurusan Teknik Informatika, Politeknik Elektronika Negeri Surabaya, Institut Teknologi Sepuluh Nopember Email :
[email protected]
Abstrak - Kemudahan dalam berkomunikasi merupakan sebuah kemajuan teknologi yang dapat kita nikmati pada saat ini. Komunikasi ini dapat berupa percakapan atau hanya saling berkirim pesan singkat (Short Messaging Service / SMS). Seiring dengan kemudahan yang didapat, maka keinginan yang lain pun dapat muncul yang menuntut sesuatu yang lebih mudah dari kemudahan yang sudah ada. Sebagai contoh, mengirim SMS ke banyak tujuan dengan sekali tekan tombol kirim.. Pengiriman pesan memerlukan biaya pengiriman / pulsa. Semakin banyak pesan, semakin banyak pulsa yang dipakai. Aplikasi yang dikembangkan ini menerapkan metode value-based decision untuk dapat mengoptimalkan penggunaan pulsa yang dipakai untuk mengirimkan pesan tersebut. Metode value-based decision adalah sebuah metode untuk menentukan suatu pemilihan keputusan dengan diketahui faktor – faktor tertentu yang mendukung suatu keputusan tersebut. Pengoptimalan metode value-based decision untuk waktu dan biaya pengiriman pada aplikasi ini diterapkan dengan menggunakan lebih dari satu perangkat / modem, dan dalam ujicoba, digunakan tiga modem.
mulai dari yang seharga VCD player sampai yang seharga sepeda motor baru. Yang menjadi pelengkap dari iklan telepon genggam adalah iklan dari provider selular. Mereka saling serang provider yang lain demi menarik hati masyarakat. Banyak cara dilakukan, mulai dari banting harga tarif, memberikan bonus pulsa, sampai memberikan gratis untuk berkirim SMS dan telepon, tapi tentu saja mereka tidak mau rugi meski dengan memberikan layanan murah atau bahkan gratis. Berkomunikasi sudah menjadi hal yang penting bagi kita. Dan bagi orang yang memiliki jaringan luas, maka memiliki alat untuk komunikasi menjadi sangat penting demi kelancaran urusannya. Yang paling sering dilakukan oleh seseorang dalam berkomunikasi dengan menggunakan alat telepon genggam adalah mengirimkan pesan singkat atau SMS. SMS ini dapat berisi macam – macam. Salam, pemberitahuan, undangan, atau bahkan bisa berbisnis dengan menggunakan SMS. Satu hal yang tidak lepas dari kita ketika kita mengirim SMS adalah bahwa mengirim SMS memerlukan biaya, kecuali kita sedang mendapatkan gratisan atau provider sedang melakukan promo. Tapi di sini kita berbicara diluar hal itu. Tarif SMS setiap provider dapat berbeda dengan yang lain. Kita juga mengenal istilah tarif sesama dan tarif ke lain operator. Dalam kasus sebuah institusi ingin mengundang sejumlah staff untuk menghadiri suatu pertemuan, maka tentu akan mengalami kerepotan dalam mengirim pesan yang sama ke puluhan, atau bahkan ribuan nomor tujuan. Selain itu tentu akan menghabiskan biaya yang relative lebih mahal jika dikirim dari satu nomor ke semua nomor baik dari operator yang sama maupun operator yang berbeda. Mengirim pesan seperti kasus di atas akan lebih mudah dilakukan dengan menggunakan suatu sistem SMS Broadcaster yang menangani proses perpesanan, baik mengirim maupun menerima pesan. Selain itu pada aplikasi SMS Broadcaster juga menyediakan layanan
Kata kunci : SMS Broadcaster, MADM Value-based, AT Command, optimaliasi
1. Pendahuluan Teknologi pada saat ini telah mengalamai kemajuan yang sangat pesat untuk yang kesekian kalinya. Terlebih pada bidang teknologi informasi, kemajuan telah kita saksikan dari berbagai bidang antara lain pada perangkat keras, perangkat lunak, desain grafis dan sarana telekomunikasi. Pada bidang telekomunikasi, dapat kita saksikan di berbagai media, di sana banyak iklan telepon genggam dengan berbagai macam merek dan serinya dan menawarkan fitur – fitur masing – masing, dan dengan harga yang bervariasi,
1
Hasyim Asy’ari – 7406040032
manajemen kontak yang dapat menyimpan ribuan nomor telepon kerabat melebihi kapasitas telepon genggam. Dan dengan adanya modem yang lebih dari satu dengan kartu provider yang berbeda, memungkinkan untuk mendapatkan waktu dan biaya pengiriman yang lebih efektiv dan efisien.
Jika HP tidak menerima laporan pengiriman dalam jangka waktu tertentu, maka dapat disimpulkan bahwa laporan tersebut hilang. HP kemudian harus kembali mengirimkan SMS ke pusat pesan. Sebuah penanda kemudian akan ditambahkan ke pesan yang baru ini, yang menandakan bahwa pesan ini sebenarnya sudah pernah dikirimkan sebelumnya. Jika laporan kirim yang sebelumnya ternyata berhasil, maka pusat pesan akan mengabaikan sms yang baru tersebut, tapi kemudian akan mengirimkan laporan kirim ke HP. Mekanisme yang seperti ini mencegah untuk pengiriman pesan yang sama ke penerima berulang kali. Kadang kala mekanisme laporan kirim pesan ini tidak digunakan dan pemberitahuan tentang pengiriman pesan ke pusat pesan ini dilakukan pada layer yang lebih rendah.
2. Teknologi SMS Short Messaging Service (SMS) merupakan sebuah layanan komunikasi dengan cara mengirim sebuah pesan singkat dari seorang pengirim ke satu atau banyak penerima dengan memanfaatkan perangkat telepon/telepon genggam. SMS ini dikirim dari satu nomor ke nomor lain menggunakan jasa provider. SMS ini tentu memerlukan biaya yang mungkin akan berbeda untuk satu provider selular dengan yang lain. Beberapa hal yang menyangkut tentang teknologi dasar dari SMS ini adalah sebagai berikut:
d)
Laporan Pesan Terkirim Kepada Tujuan Setelah menerima sms, HP dari penerima akan mengirim kembali sebuah pesan laporan terkirim ke pusat pesan yang memberitahukan bahwa apakah di sana terdapat error (contoh sebab: format sms tidak didukung, penyimpanan pesan tidak cukup, dll). Jika tidak ada kesalahan, maka penerima pesan akan mengirimkan kepada pusat pesan laporan positif, dan mengirim laporan negative jika ada. Jika si pengirim meminta laporan status lebih dulu, pusat pesan akan mengirim laporan status pesan ke pengirim jika sudah menerima laporan terkirim dari si penerima.Jika pusat pesan tidak menerima laporan pesan terkirim, maka dapat disimpulkan bahwa laporan ini hilang, maka pusat pesan akan kembali mengirim pesan ke penerima.
a)
Periode Validitas Dari Sebuah SMS Sebuah pesan SMS ketika sudah dikirim maka akan disimpan sementara di nomor pusat pesan jika nomor telepon tujuan sedang tidak aktif. Waktu valid ini dapat ditentukan sendiri dari telepon genggam, sehingga jika waktu valid ini sudah habis dan SMS masih belum terkirim ke tujuan, maka SMS ini tidak akan dikirimkan ke tujuan dan SMS dihapus dari pusat pesan. b)
Laporan Status Pesan Laporan status pesan adalah sebuah pesan SMS yang dikirim oleh pusat pesan yang menandakan apakah pesan yang kita kirimkan itu sudah tertuju kepada telepon tujuan dengan berhasil. Laporan status pesan ini biasanya tidak diaktifkan pada kebanyakan telepon genggam dan modem GSM / GPRS.
3. AT Command AT command adalah perintah untuk menngendalikan sebuah modem. AT adalah singkatan dari Attention (perhatian). Setiap baris perintah harus diawali dengan “AT” atau “at”. Oleh karena itu, perintah untuk modem ini disebut dengan AT command. Modem GSM/GPRS dan HP mendukung sebuah kumpulan AT command yang khusus untuk teknologi GSM, yang menyangkut perintah yang berhubungan dengan sms, seperti AT+CMGS (mengirim sms), AT+CMGL (melihat semua sms) dan AT+CMGR (untuk membaca sms). Ada dua tipe dari AT command, yaitu basic dan extended.
c)
Laporan Pesan Terkirim Kepada Pusat Pesan Sebuah SMS setelah meninggalkan telepon maka akan menuju ke pusat pesan. Setelah tiba di pusat pesan, maka pusat pesan akan kembali mengirimkan pesan yang berisi informasi apakah di sana terdapat error atau kegagalan (misal format sms yang tidak benar, pusat pesan sedang sibuk, dll). Jika tidak ada error, maka pusat pesan akan mengirimkan laporan terima positif ke HP. Begitu juga jika ada kesalahan, maka laporan pesan negative akan dikirimkan, yang kemudian HP akan memberi peringatan kepada pemiliknya bahwa pengiriman pesan gagal dikarenakan suatu sebab tertentu.
2
Hasyim Asy’ari – 7406040032
a) Basic command adalah AT command yang tidak menggunakan tanda “+”. Contoh : D (dial), A (answer/jawab), H (hook) dan O (kembali ke online data state). b) Extended command adalah AT command yang menggunakan tanda “+”. Semua AT command GSM adalah extended command. Contoh : +CMGS (mengirim pesan), +CMGL (tampilkan daftar pesan), +CMGD (menghapus pesan). Tabel berikut merupakan contoh AT Command yang sering dipakai untuk aplikasi SMS Center. AT command AT
AT+GMI AT+CMGF
AT+CMGL
AT+CMGR
AT+CMGD
AT+CMGS
Gambar 1 MSComm dan Serial ports
Serial port dan MSComm digunakan untuk mengirimkan perintah AT Command ke modem dan juga untuk menerima jawaban dari perintah tersebut.
5. Metode value-based decision Dalam pengertian aslinya pada buku ValueBased Decision Making The Role of Value Analysis in National Park Service Capital Improvement tahun 2003, Value-based decision making adalah sebuah usaha yang terorganisir yang dipimpin oleh seorang yang sudah terlatih dalam teknik analisis nilai untuk menganalisa fungsi dari system, kebutuhan, fasilitas, layanan, dan persediaan dengan tujuan untuk mendapat fungsi terpenting pada kebutuhan biaya terrendah, tapi tetap mempertahankan unjuk kerja, kualitas dan keamanan yang ditetapkan. Ada beberapa fase dalam membuat keputusan berdasarkan metode value-based decision ini, yaitu:
Keterangan Untuk memeriksa apakah modem siap untuk diberi AT command Mendapatkan merek modem Untuk memilih mode operasi dari modem. AT+CMGF=1, maka modem akan beroperasi dalam mode teks. Untuk menampilkan pesan. AT+CMGL=”ALL” akan menampilkan semua pesan. Untuk membaca pesan pada index tertentu. AT+CMGR=1 akan menampilkan pesan yang tersimpan di modem pada index ke -1. Untuk menghapus pesan pada index tertentu. AT+CMGD=1 akan menghapus pesan di modem pada index 1. Mengirim pesan. Penggunaannya seperti pada contoh di sub bab sebelumnya.
1) Fase informasi, yaitu mencari tahu tentang informasi dalam suatu permasalahan; 2) Fase fungsi, yaitu menentukan fungsi yang digunakan dalam pemecahan permasalahan; 3) Fase kreativitas, yaitu dengan berkreasi menentukan langkah yang lebih baik dalam pencapaian tujuan ini; 4) Fase evaluasi, yaitu fase untuk mengevaluasi fungsi yang digunakan; 5) Fase pengembangan, yaitu untuk pengembangan lebih lanjut; 6) Fase rekomendasi, yaitu fase untuk memberikan saran agar memakai fungsi yang lebih baik; 7) Fase implementasi, yaitu fase penggunanan fungsi yang telah direkomenasikan sebelumnya.
Table 1 AT Command yang sering dipakai pada aplikasi SMS Center
4. Serial port pada Visual Basic .NET
Dalam aplikasi Tugas Akhir ini, metode value-based decision digunakan untuk mengoptimalkan penggunaan waktu dan biaya pengiriman sms yang berjumlah banyak. Dan faktor – faktor yang menjadi fase informasi adalah sebagai berikut:
Dalam membuat sebuah aplikasi yang dapat berkomunikasi dengan modem melalui port dari sebuah komputer dengan menggunakan Microsoft Visual Studio 2008, maka diperlukan sebuah komponen yang bernama SerialPort. Pada Microsoft Visual Studio 6, komponen yang digunakan untuk melakukan komunikasi dengan port yaitu Microsoft Communication Control (MSComm).
1) Provider pada modem mana yang paling murah dalam mengirim sms; 2) Modem mana yang memiliki antrian lebih sedikit dari yang lain;
3
Hasyim Asy’ari – 7406040032
3) Modem mana yang memiliki prosentasi lebih besar dari yang lain dalam hal keberhasilan mengirm pesan sebelumnya. Dengan faktor di atas, maka didapatlah sebuah keputusan modem mana yang dipilih untuk mengirimkan sms ini ke nomor tujuan.
6. Perancangan Aplikasi Pada Tugas Akhir ini akan di desain sebuah aplikasi SMS Broadcaster dengan berbasis web menggunakan ASP.NET dengan script menggunakan bahasa pemrograman Visual Basic .NET dan dibantu dengan AJAX. Aplikasi yang dibangun ini diperuntukkan untuk instansi atau juga perorangan untuk memudahkan mengirim sms secara broadcast yaitu mengirim sms ke banyak nomor tujuan dengan sekali tekan tombol kirim. Aplikasi mempunyai beberapa menu, yang setiap menu akan menampilkan halaman tertentu sesuai dengan menu tersebut. Dan untuk menghindari seringnya terjadi event postback pada halaman web, maka digunakanlah AJAX yang akan menangani event – event tertentu. Fitur dari aplikasi ini adalah sebagai berikut: Tambah, ubah, hapus kontak Grouping, yaitu tambah, ubah, hapus group dan memasukkan kontak ke dalam group tertentu. Menampilkan semua sms, baik kotak masuk, terkirim maupun draf Mengirim sms dengan beberapapilihan metode. Menampilkan semua port yang ada dikomputer Menampilkan modem apa saja yang terhubung dengan komputer yang dapat dipakai untuk aktivitas perpesanan ini.
Gambar 2 Topologi Sistem SMS Broadcaster
Secara garis besar, kebutuhan yang hendak dipenuhi oleh keberadaan sistem mySuper SMS Broadcasterini digambarkan pada gambar 3 dan gambar 4 berikut: custom Functional Requirements Membaca SMS masuk, terkirim dan draf Menyediakan layanan perpesanan Menulis dan mengirim SMS
Gambar 3 Kebutuhan perpesanan custom Functional Requirements Tambah, ubah dan hapus kontak Menyediakan layanan penyimpanan data kontak Grouping kontak
7. Arsitektur Aplikasi
Gambar 4 Kebutuhan managemen kontak
Dalam implementasinya, sistem Perpustakaan Digital ini memiliki topologi perangkat dan jaringan sebagaimana dijelaskan oleh gambar 1.
Dari gambaran di atas, maka penulis memetakan beberapa kebutuhan fungsional sebagaimana berikut: 1. Menyediakan layanan aktivitas yang berhubungan dengan SMS, yaitu membaca SMS (SMS masuk,terkirim dan tidak terkirim/draf). Serta menulis kemudian mengirimkan SMS tersebut ke nomor tujuan yang dipilih dari data kontak. 2. Menyediakan layanan managemen data kontak, yaitu menambah kontak baru,
4
Hasyim Asy’ari – 7406040032
mengubah dan menghapus kontak yang sudah tersimpan dalam database. Dengan banyaknya kontak yang tersimpan maka disediakanlah layanan grouping agar memudahkan dalam memilih kontak ketika hendak mengirimkan SMS.
pada suatu port, maka jawaban dari “AT” adalah “OK”, dan akan memberikan jawaban ERROR jika tidak ada modem pada port tersebut. c)
Mendapatkan nama modem dengan perintah AT Command “AT+GMI” Pengguna tentu tidak menghendaki yang ditampilkan adalah nama COM dari modem yang terhubung, maka dengan mengirimkan perintah AT Command “AT+GMI” untuk setiap COM yang telah didapatkan pada poin b di atas akan didapatkan nama dari modem tersebut, misal WAVECOMM MODEM.
Disamping itu, penulis juga memetakan kebutuhan non-fungsional yang diharapkan mampu dipenuhi oleh aplikasi ini. Kebutuhankebutuhan tersebut adalah sebagai berikut: a. Accessibility Aplikasi dapat diakses oleh siapapun, dimanapun dan dari platform apapun, karena client yang hendak memanfaatkan aplikasi ini cukup dengan membuka web browser dan mengakses komputer server, tapi terbatas pada PC, bukan web browser dari HP;
d) Mengatur data provider Mengatur data provider adalah dengan memasukkan data nama – nama provider, nomor awal dari provider serta tarif SMS untuk setiap nomor ke sesama provider dan ke lain provider. Kartu SIM yang ada dalam modem juga harus ditentukan providernya siapa. e) Menampilkan SMS dari modem Untuk menampilkan SMS dari modem yang dipilih, maka digunakanlah perintah AT Command AT+CMGL. Untuk menampilkan SMS masuk dan belum terbaca, yaitu dengan memberikan parameter “REC UNREAD”. Untuk SMS masuk dan sudah terbaca “REC READ”, untuk draft “STO UNSENT” dan untuk SMS terkirim dengan “STO SENT”. Jawaban dari perintah ini akan mengembalikan string yang akan membingungkan para pembacanya, maka ddiperlukanlah parsing string untuk string ini berdasarkan “+CMGL”, nomor pengirim, tanggal pengiriman dan isi SMS serta “OK“ di setiap akhir SMS yang dibaca dari modem.
b. Manageability Semua konten dari aplikasi dapat disesuaikan dengan kebutuhan pengguna, sehingga data – data yang ditampilkan di aplikasi bisa ditambah, diubah dan dihapus. c. Performance Kecepatan unjuk kerja, dapat ditingkatkan dengan adanya AJAX pada web sehingga waktu yang digunakan untuk postback / reload atau loading dapat dikurangi, sehingga seakan – akan halaman web tersebut tidak melakukan postback.
f)
Menjadwalkan pengiriman SMS pada modem dengan pilihan metode Menjadwalkan pengiriman adalah dengan memasukkan daftar nomor tujuan pengiriman SMS ke sebuah tabel yang menyatakan akan dikirim melalui modem tertentu kemudian ditampilkan kepada pengguna. Misal SMS dengan tujuan nomor ini akan dikirim melalui modem A maka akan dimasukkan ke dalam tabel A dan seterusnya.
8. Implementasi a) Mendapatkan port yang tersedia dalam pada komputer Untuk dapat melakukan komunikasi dengan modem, maka perlu didapatkan nama – nama port yang ada pada komputer. Nama port adalah COM dan diikuti dengan nomornya, misal COM1, COM2 dan seterusnya, sampai jumlah maksimal port yang ada pada komputer.
g) Mengirim SMS melalui modem Setelah dilakukan penjadwalan, maka untuk setiap nomor tujuan yang tertera pada tabel antrian pengiriman akan dikirimi pesan dengan perintah AT Command AT+CMGS=”nomor_tujuan” <enter> isi pesan
. Setelah beberapa detik maka akan didapatkan jawaban “OK” dari modem jika SMS
b) Mendapatkan port yang terhubung dengan modem GSM/GPRS Mendapatkan port yang mana di sana terhubung dengan modem adalah dengan cara mengirimkan pesan AT Command “AT” untuk semua modem yang ada di komputer. Jika modem terhubung
5
Hasyim Asy’ari – 7406040032
berhasil dikirimkan. Jika waktu pengiriman lebih dari lima detik, maka diasumsikan bahwa pengiriman telah gagal atau status pesan adalah menunggu.
sms_tutorial.asp?page=basicConcepts, diakses tanggal 1 April 2009) [2] Introduction to AT Commands , [online], (http://www.developershome.com/sms/ atCommandsIntro.asp, diakses tanggal 1 April 2009) [3] Reading SMS Messages from a Message Storage Area Using AT Commands (AT+CMGR, AT+CMGL) , [online], (http://www.developershome.com/sms/ readSmsByAtCommands.asp, diakses tanggal 1 April 2009) [4] Sending SMS Messages from a Computer / PC Using AT Commands (AT+CMGS, AT+CMSS) , [online], (http://www.developershome.com/sms/ sendSmsByAtCommands.asp, diakses tanggal 1 April 2009) [5] How to Use Microsoft HyperTerminal to Send AT Commands to a Mobile Phone or GSM/GPRS Modem? , [online], (http://www.developershome.com/sms/ howToUseHyperTerminal.asp, diakses tanggal 1 April 2009) [6] Operating Mode: SMS Text Mode and SMS PDU Mode, [online], (http://www.developershome.com/sms/ operatingMode.asp, diakses tanggal 1 April 2009) [7] SerialPort Class , [online], (http://msdn.microsoft.com/ enus/library/system.io.ports.serialport.asp x, diakses tanggal 1 April 2009) [8] Stagner, Joe, 2007, Get Started with ASP.NET AJAX, [video], (http://www.asp.net/learn/ajaxvideos/video-75.aspx, diakses tanggal 1 April 2009) [9] Thread Class , [online], (http://msdn.microsoft.com/ enus/library/system.threading.thread.aspx, diakses tanggal 1 April 2009). [10] Value Based Decision-making. National Park Service-WASO-PPFLConstruction Program Management Value Analysis. 2003. [11] Kusumadewi, Sri , 2001 , Metode metode Optimasi dengan Alternatif
h) Update status modem Setelah pengiriman selesai, maka dihitung berapa persen SMS terkirim dengan status “OK” dan status “pending”, kemudian hasil prosentase ini akan diberikan kepada prosentase keberhasilan modem dalam mengirim pesan yang akan mempengaruhi kepada metode penjadwalan dengan metode value-based decision. i) Menghapus pesan Untuk setiap pesan yang dipilih pada modem maka dapat dihapus dengan menggunakan perintah AT+Command AT+CMGD= j) Manajemen kontak Manajemen kontak ialah dengan menyediakan layanan penambahan kontak baru, mengubah data kontak yang lama serta menghapus kontak yang dipilih.. k) Melakukan grouping Grouping ialah memasukkan kontak ke suatu nama group tertentu. Satu kontak dapat masuk ke dalam beberapa group dan begitu juga satu group dapat memiliki banyak kontak.
9. Kesimpulan Untuk mendapatkan biaya yang termurah : Dikirim ke modem dengan kartu Axis, dengan asumsi saat ini tariff SMS untuk Axis adalah yang paling murah. 2. Untuk mendapatkan waktu tercepat : dikirim ke sesama. 3. Untuk mendapatkan waktu dan biaya yang optimal keduanya maka digunakanlah metode value-based decision. 1.
10. Daftar Pustaka [1] Basic Concepts of SMS Technology , [online], (http://www.developershome.com/sms/
6
Hasyim Asy’ari – 7406040032
Terbatas,Materi Kuliah Sistem Pendukung Keputusan,Universitas Islam Indonesia.
7
Hasyim Asy’ari – 7406040032