Bukan Tutorial JPOS (ISO 8583)

Bismillah.

Disklamasi

Sesuai judul posting, tulisan ini bukan tutorial JPOS, melainkan pengalaman saya menggunakan jpos (project log). Jadi jangan terlalu banyak berharap tulisan ini akan membantu Anda memecahkan masalah yang Anda hadapi. Untuk itulah Anda dibayar Boss Anda bukan? Wkwkwkw…

jpos

Pendahuluan

Menggunakan JPOS adalah salah satu tantangan terberat yang pernah saya hadapi di dunia perkodingan. Minimnya resource tentang JPOS (baik dalam bahasa Inggris maupun Indonesia) masih diperparah dengan kenyataan bahwa tutorial-tutorial JPOS yang tersedia hanya membahas satu tipe instalasi JPOS saja. Tutorial-tutorial tersebut masih belum menunjukkan kekuatan sebenarnya dari JPOS. Mungkin saja karena tutorial-tutorial tersebut ditulis ketika JPOS masih dalam versi awal. Untuk itulah tulisan ini ingin menunjukkan bahwa fitur yang ditawarkan JPOS sebenarnya sangat luar biasa. Kombinasinya bisa dikatakan endless.

Mengapa kita perlu mengetahui kelengkapan fitur JPOS? Ada dua alasan utama. Pertama, aplikasi ISo8583 diharapkan dapat mengantisipasi load yang tinggi. Tuning JPOS untuk mendapatkan TPS (Transaction per Second) yang tinggi, jelas tidak datang dari konfigurasi standar. Kedua, tidak setiap kondisi di mana JPOS digunakan, dapat dipecahkan dengan solusi konfigurasi yang standar. Pengalaman saya menggunakan JPOS untuk menghubungkan sebuah database korporasi dengan salah satu institusi keuangan, justru mengharuskan sebuah konfigurasi JPOS di luar konfigurasi umum.

Meskipun tulisan ini tidak merinci seluruh fitur-fitur kelengkapan JPOS (karena kombinasinya luar biasa banyaknya), tetapi tulisan ini ingin setidaknya mengenalkan logika dasar penggunaan JPOS. Untuk penyelesaian akhir aplikasi ISO8583 yang sedang Anda bangun, Anda bisa merujuk pada Guide yang disediakan JPOS ataupun melalui milis user jpos. Hati-hati! Jangan kaget bila ada senior-senior di milis yang akan membalas pertanyaan Anda dengan sinis dan nyinyir.

Berikut ini adalah susunan tulisan bukan tutorial JPOS ini:

  1. Lisensi
  2. ISO 8583
  3. Kompilasi JPOS
  4. JPOS sebagai Aplikasi
  5. JPOS sebagai Framework
  6. Packager
  7. Menghubungkan JPOS dengan Database
  8. Referensi Lain yang Menarik

Lisensi

Meskipun JPOS dirilis di bawah lisensi Open Source, tetapi (entah bagaimana, saya bukan orang hukum) penggunaan JPOS untuk kegiatan komersial diharuskan menggunakan lisensi komersial. Apakah ini jebakan betmen? Hehehe.. entahlah. Padahal sangat kecil kemungkinan (atau bahkan mustahil?) ada aplikasi ISO 8583 yang tidak bertujuan komersial.

Sisi baiknya, dengan lisensi JPOS yang Open Source itu , kita bisa menggunakan (baca: mengkonfigurasikan) JPOS terlebih dahulu, baru membeli lisensinya. Jadi kita tidak membeli kucing dalam karung seperti ketika membeli aplikasi komersial biasa. Bahkan JPOS jauh lebih baik dari aplikasi yang memberikan demo atau trial, karena JPOS sudah memberikan aplikasi full feature sejak awal. Kita bebas menggunakannya sampai pada titik ketika aplikasi tersebut berjalan secara komersial, kita disyaratkan untuk memiliki lisensi komersial dari JPOS.

ISO 8583

ISO 8583 adalah sebuah protokol komunikasi antarhost yang dirancang khusus untuk kebutuhan payment. Anda dapat mempelajari ISO 8583 dari berbagai sumber kemudian kembali ke halaman ini untuk melanjutkan (bukan) tutorial JPOS.

Berikut beberapa link yang mungkin bisa membantu:

  1. Wikipedia page ttg ISO 8583
  2. An Introduction to ISO 8583 oleh kuriositaet.de
  3. Ebook ttg ISO 8583 oleh mas amyunus
  4. Pengenalan ISO 8583 oleh Bayu Rimba

Kompilasi JPOS

Kode sumber JPOS selalu tersedia terbuka. Dulu kode sumber ini disediakan di sourceforge. Sejak versi xx, kode sumber JPOS disediakan di github. Untuk dapat menggunakan JPOS, kita harus meng-compile kode sumber ini menjadi sebuah file JAR. Ada berbagai cara mengkompilasi JPOS menjadi JAR. Untuk amannya, ikutilah petunjuk di file README.md di dalam JPOS.

  1. Kompilasi Quick and Dirty.
    Cara kompilasi ini bisa ditempuh dalam keadaan terdesak 😀 Caranya adalah dengan menzip direktori JPOS dan me-rename-nya menjadi JPOS.jar. Belum saya coba! Cuman denger dari temen master Java. (Untested)
  2. Kompilasi dengan Maven dan/atau Gradle
  3. Download saja dari saya
    Opsi terakhir, jika Anda merasa kerepotan dengan urusan kompail-mengompail ini, silakan unduh saja file JAR hasil kompilasian saya.

jpos-1.8.9-SNAPSHOT (796,6 Kb)

jpos-1.9.5-SNAPSHOT (825 Kb)

atau download sendiri nightly build dari http://jpos.org/maven/ (direktori: org/jpos/jpos/x.x.x-SNAPSHOT/)

 

JPOS sebagai Aplikasi

Oke, setelah memiliki file jar JPOS, selanjutnya kita akan mulai dengan skenario paling sederhana, yaitu langsung menggunakan JPOS sebagai aplikasi. Keuntungan metode ini adalah kita tidak perlu melakukan programmning, cukup dengan mengedit file konfigurasi saja. Di dalam coding aplikasi berbasis JPOS, bisa dikominasikan dengan konfigurasi QBean. Pembahasan lebih lanjut akan dituangkan dalam postingan terpisah.

Project Guide jpos terbaru justru menyarankan kita menggunakan metode ini.

JPOS sebagai Framework

Selain menggunakan JPOS sebagai aplikasi, kita juga bisa menggunakan JPOS sebagai framework. Keuntungan metode ini adalah kita dapat mensetting/memprogram aplikasi ISO 8583 dengan cara yang fleksibel sesuai dengan keinginan kita. Seluruh perilaku aplikasi bisa kita kendalikan sepenuhnya. Kita dapat mengkonfigurasi koneksi, logika pemrograman, ISO package, ISO message, dst. Hal ini sangat kita perlukan jika requirement dari user maupun lingkungan menuntut adanya fitur khusus dari aplikasi kita (haduh.. belibet bener bahasanya, mudah-mudahan yang baca ngerti ya). Pembahasan lebih lanjut akan dituangkan dalam postingan terpisah, Insya Allah.

Sebagai gambaran singkat, penggunaan jPOS sebagai ISO Server adalah solusi terpopuler. Tetapi saya pernah juga mendapati requirement dari bank agar jPOS sebagai pensuplai data ditempatkan sebagai client (nah lho!).

Packager

Jpos belum bisa berjalan tanpa konfigurasi packager data. Ada banyak Packager yang sudah preload di jpos, tinggal pilih. Yaitu:

  1. XML Packager
  2. ISO 87A Packager
  3. ISO 87A Packager BBitmap
  4. ISO 87B Packager
  5. ISO 93A Packager
  6. ISO 93B Packager

Kita juga bisa membuat Packager sendiri, jpos menyediakan class Generic Packager untuk menggunakan packager buatan sendiri.

Menghubungkan JPOS dengan Database

Agar JPOS dapat memberikan data yang diperlukan oleh host, maka kita perlu mengambil data yang diminta oleh host dari database kita. Nah ini urusannya agak panjang, karena database bisa bermacam-macam platform.

Pembahasan lebih lanjut akan dituangkan dalam postingan terpisah, Insya Allah. Namun secara singkat, saya banyak terbantu dengan adanya JDBC driver. Ada banyak database yang bisa diakses menggunakan JDBC, antara lain:

  1. MySQL (JDBC Driver),
  2. PostgreSQL (JDBC Driver),
  3. MS SQL Server (JDBC Driver),
  4. dan lain-lain.

Saya sendiri menggunakan Oracle JDBC Driver versi 6.

Referensi Lain yang Menarik

Uulasan di atas masih membicarakan seputar dasar-dasar jpos, masih ada banyak hal lain yang dapat dibangun menggunakan jpos. Beberapa sumber telah mengulas hal-hal menarik dan berguna seputar jpos.  Sementara ini saya list dulu saja yha..

  1. Membuat jPOS client dengan jpos-template
  2. Step-by-Step Membangun jPOS ISO Server dengan Netbeans
  3. jpos javadoc (Very Useful! Terutama ketika mencari method suatu Class jpos)
  4. Me-log message ISO 8583 dengan log4j

Jika Anda menemukan referensi jpos yang menarik, silakan tambahkan melalui kotak komentar ya!

Penutup

Apa yang ingin saya katakan di penutup tulisan ini mungkin tidak relevan dengan isi tulisan. Namun saya merasa hal tersebut cukup sangat penting untuk diketahui. Perlu diingat bahwa bank adalah sumber aktivitas ribawi, sebuah dosa yang tidak ditolerir di berbagai agama. Sebagai programmer jpos, saya harap kita dapat memilah mana bentuk kerja sama dengan bank yang terlarang dan mana yang masih dalam kategori diperbolehkan.

Mudah-mudahan tulisan ini bermanfaat.

Madinah Live Streaming

Alhamdulillah, setelah sebelumnya kita bisa menikmati live streaming ibadah haji 2011 dan live streaming dari kompleks Masjidil Haram, Makkah, berikut ini adalah link video live streaming dari Madinah. Dengan adanya posting ini, sudah 2 tempat dan 1 prosesi ibadah di tanah suci yang dapat kita tonton melalui internet. Dua tempat yang dapat dipantau secara online tersebut adalah Mekkah dan Madinah, sementara rangkaian prosesi ibadah yang tersiar secara online adalah ibadah Haji tahun 2011 yang lalu.

Video live streaming dari kompleks Masjid Nabawi, Madinah, dapat diakses melalui kanal youtube SaudiSunnahTv. Berikut ini tampilannya:

Dengan adanya live streaming ini, kita bisa mempelajari kondisi di Mekkah dan Madinah sebelum benar-benar menginjakkan kaki di sana. Itung-itung mengurangi shock culture ketika nanti dapat rejeki untuk umrah atau haji. Selain itu, praktik keagamaan di Saudi juga bisa diintip dari siaran ini.

Beberapa kali saya melihat pemandangan menarik dari live streaming ini. Misalnya, di depan makam Nabi banyak peziarah yang diusir Askar. Kalau di Indonesia pasti sudah dicap Wahabi tuh 😀 Sayangnya, saya belum pernah melihat siaran streaming ketika ada majelis ta’lim. Padahal konon di Masjid Nabawi kerap diselenggarakan taklim.

Selamat menikmati layanan live video streaming dari Madinah, kota Nabi.

10 Website .go.id Tersibuk

Sepak terjang instansi pemerintah di kancah per-internet-an mungkin masih jauh tertinggal dibanding sektor swasta. Meskipun demikian, keberadaan website tersebut amat dibutuhkan oleh masyarakat. Hal ini terlihat dari besarnya trafik kunjungan ke website-website pemerintahan.

Umumnya, kepopuleran website instansi pemerintah disebabkan oleh konten informasi yang ditampilkan serta penyediaan layanan online (e-procurement, aplikasi lowongan, e-SPT, kamus online, dll).

Top 10 .go.id yang Paling Banyak Dikunjungi

Berikut ini adalah hasil riset saya mengenai 10 website instansi pemerintah tersibuk. Metodologi riset adalah dengan membandingkan trafik antar website. Data trafik didapat dari alexa.com. Data berdasarkan posisi pada saat riset dilaksanakan (tanggal 9 November 2011).

Domain yang ditandingkan adalah domain utama. Sub-domain dianggap sebagai bagian dari domain utama. Penilaian untuk website depkeu.go.id sudah termasuk sub-domain: anggaran,depkeu.go.id, fiskal.depkeu.go.id, djpk.depkeu.go.id, dst. Untuk pajak.go.id diperlakukan terpisah dari depkeu.go.id karena memiliki domain utama yang berbeda.

Dan, ke-10 website go.id tersibuk adalah..

1. Website Kementerian Pendidikan Nasional (http://kemdiknas.go.id)

Website Kemendiknas

Website ini adalah website pemerintahan tersibuk, yang berada di ranking 260 untuk website Indonesia, dan 26 ribu untuk ranking seluruh dunia. Menurut catatan Internet Archive, website ini lahir pada 4 Mei 2010 atau baru berusia 1 tahun. Sebelumnya, website ini memiliki nama domain depdiknas.go.id.

Alexa Statistics Summary utk kemendiknas

Dari mana trafik tersebut berasal? Website menyediakan berbagai layanan di websitenya, seperti misalnya menyediakan link untuk mengunduh BSE (Buku Sekolah Elektronik), informasi beasiswa, informasi akreditasi perguruan tinggi, dll. Trafik terbesar datang dari pengunjung aplikasi Kamus Besar Bahasa Indonesia online. Selain itu, karena banyak direferensikan oleh web lain (sekitar 2747 link), website kemendiknas diganjar skor Google Page Rank 6. Nilai tersebut menunjukkan bahwa website kemendiknas memiliki kredibiltas yang cukup tinggi. Hal ini dimungkinkan karena web kemendiknas banyak mendapat backlink dari website-website perguruan tinggi (.ac.id).

 

2. Website Dirjen Dikti (dikti.go.id)

Ditjen Dikti

Website ini sebenarnya adalah bagian dari kemendiknas juga, namun karena memiliki domain terpisah maka diperlakukan terpisah pula. Website dikti menempati ranking 381 untuk Indonesia, dan 31 ribu untuk dunia. Menurut catatan Internet Archive, website ini lahir pada tanggal 18 Mei 2004 sehingga saat ini telah berumur 7 tahun. Kredibilitas website ini cukup tinggi yakni memiliki Google Page Rank dengan nilai 6.

Statistics Summary for dikti.go.id

Website Dikti menyediaan akses jurnal akademis, informasi beasiswa dikti, panduan perguruan tinggi, download gratis majalah Kampus, direktori perguruan tinggi, dll. Ada pula berita prestasi-prestasi mahasiswa dan dosen Indonesia di kancah internasional seperti kontes robot.

 

3. Website Bank Indonesia (bi.go.id)

Bank Indonesia

Dugaan saya, website Bank Indonesia ini salah setting DNS, karena tidak bisa dibuka dengan alamat bi.go.id saja, namun harus menyertakan www di depannya. Meskipun demikian web ini menempati urutan ketiga dari daftar 10 website .go.id tersibuk. Website ini menempati ranking 503 untuk Indonesia dan 53 ribu untuk dunia. Website ini sudah berumur 13 tahun, mulai mengudara sejak 26 Januari 1998.

Stat Summary for bi.go.id

Di web ini, Anda bisa mendapatkan informasi kurs, inflasi dan berbagai publikasi mengenai ekonomi dan moneter Indonesia. Website BI juga menyediakan laporan-laporan keuangan bank-bank di Indonesia.

 

4. Website Kementerian Pertanian (deptan.go.id)

Deptan

Website Kementerian Pertanian berada di ranking 748 Indonesia dan 52 ribu dunia. Website ini sudah berumur cukup tua, menyaingi website BI, yaitu berumur 13 tahun (mulai online 5 Desember 1998). Tanpa awalan kem atau dep, membuat nama domain deptan lebih ‘abadi’, tidak seperti website kemendiknas yang sempat berganti nama.

Stat Summary

 

 

5. Website Kementerian Keuangan (depkeu.go.id)

Kemenkeu

Menempel sedikit di bawah Kementan adalah website Kementerian Keuangan dengan berada di 752 ranking Indonesia dan 46 ribu untuk dunia. Website ini lahir pada 25 Januari 1999, atau telah berusia 12 tahun. Website ini termasuk yang enggan berubah menjadi berawalan kem. Sama seperti website BI, website depkeu tidak dapat diakses tanpa menyertakan www.

Stat Summary

Website Kemenkeu menyediakan link peraturan-peraturan Menteri Keuangan terbaru, mengakses majalah dan perpustakaan digital, serta publikasi-publikasi ilmiah hasil riset para peneliti Kemenkeu. Website Kemenkeu dilengkapi pula dengan aplikasi pengaduan (whistleblower system).

 

6. Website Kementerian Pekerjaan Umum (pu.go.id)

Pekerjaan Umum

Website Kementerian Pekerjaan Umum menempati ranking 1028 di antara website-website Indonesia dan 94 ribu dunia. Website ini berumur paling tua dari daftar website tersibuk ini, yakni mulai mengudara pada 10 Januari 1997.

Stat Summary

 

 

7. Website Propinsi DKI Jakarta (jakarta.go.id)

Pemprov Jakarta

Website DKI Jakarta adalah satu-satunya website pemda yang masuk ke daftar 10 besar ini. Website ini menempati urutan 1061 Indonesia dan 92 ribu dunia. Website ini mulai berfungsi pada tanggal 28 Januari 1999 (12 tahun).

Stat Summary

 

8. Website Badan Kepegawaian Nasional (bkn.go.id)

BKN

Website BKN menempati ranking 1575 Indonesia dan 147 ribu dunia. Website ini lahir pada 24 Januari 2001 (10 tahun).

Stats Summary

 

 

 

 

9. Kementerian Kebudayaan dan Pariwisata (budpar.go.id)

Kementerian Kebudayaan dan Pariwisata

Website Budpar menempati posisi agak jauh di banding 8 website lainnya, yaitu 2794 Indonesia dan 238 dunia. Lahir pada 30 Juni 2002.

Stat Summary

 

10. Website Resmi Pemerintah Indonesia (indonesia.go.id)

Website resmi pemerintah Indonesia berada di posisi 10 dengan ranking 3,728 Indonesia dan 265 ribu dunia. Website ini menyediakan tautan untuk mengunduh peraturan perundangan-undangan. Lahir pada 20 Juli 2001. Kredibilitas website ini cukup tinggi yakni memiliki Google Page Rank dengan nilai 8.

Stat Summary

 

Penutup

Seiring dengan bertambahnya informasi, layanan dan aplikasi online yang disediakan oleh website-website pemerintahan, maka utilisasi website mereka pun makin tinggi. Peran internet dalam kehidupan bernegara kita akan semakin lekat. Mudah-mudahan infrastruktur jaringan internet di Indonesia bisa semakin baik sehingga mampu menopang pertumbuhan teknologi informasi, termasuk di dalamnya teknologi informasi kepemerintahan.

Ke-10 website instansi pemerintahan di atas, telah berhasil menyita perhatian masyarakat karena mampu memberikan solusi alternatif dalam menyajikan pelayanan oleh instansi tersebut. Hal itu patut diapresiasi. Ke-10 website tersebut dapat menjadi contoh bagi website-website pemerintahan lain yang banyak masih belum memberikan nilai tambah pelayanan bagi masyarakat.

Jika terdapat kesalahan dalam mengutip data atau interpretasi data, jangan segan-segan untuk menyampaikannya melalui komentar di bawah ini.

Silaturahmi Online FISI Alumni STAN

Kalo dulu waktu kuliah ada FISI STAN. Nah sekarang setelah lulus kuliah ada FISI Alumni STAN. Berhubung orang-orangnya sudah menyebar ke seluruh Indonesia, supaya mudah, silaturahmi kita lakukan via media internet.

Silahkan klik pada poster untuk melihat poster pada ukuran sebenarnya.

Nah bagi yang mau pasang countdown, bisa pake kode berikut ini:

‹!– Do not remove the link –›‹a href=”http://www.countdown2zero.com” target=”_blank”›‹img src=”http://www.countdown2zero.com/mscd.php?code=afa9a” border=”0″›‹/a>‹!– http://www.countdown2zero.com –›

Hasilnya sebagai berikut: