Tips Agar Betah di Rumah Ketika Libur

Saya tergolong jajaran mahkluk yang cukup betah berlama-lama di dalam rumah. Weekend tetap terasa menyenangkan tanpa perlu pergi nongki-nongki ke mall atau pergi bertamasya bersama rekan-rekan sejawat seperjuangan sekampus sekantor atau se yang lainnya. Dari Jumat malam sepulang kerja, tau tau udah Minggu malam aja. Besok udah harus siap tempur lagi menjemput rejeki.

  1. Temukan hobby (baru?) mu yang bisa dilakukan di rumah.
    Coba beberapa kegiatan baru di rumah yang jarang atau belum pernah kamu lakukan. Memasak resep masakan baru, bermain game, menulis cerita fiktif, membaca, membuat prakarya, atau hal seru lainnya.kuroko
    Saya sebagai salah satu otaku abal-abal memenuhi weekend dengan membaca manga dan atau menonton anime. Marathon aneka anime series atau manga series hingga mata kelelahan dan kepala terasa pusing (Iya emang. Ini sebenernya nggak sehat). Buat rekan-rekan lain mungkin bisa marathon menonton aneka drama korea sambil cuci mata liat mas ganteng dan mbak cantik.
    papercrafttemplate
    Artikel di kaskus beberapa waktu yang lalu hot threadnya sempet bahas tentang papercraft. Itu seru juga lho. Kalau belum bisa bikin desaign template sendiri, di mbah google banyak yang share model-modelnya seperti gambar di atas. Gratis. Continue reading “Tips Agar Betah di Rumah Ketika Libur”

How To Parse and Find TLV Message (EMV Data) Using JPOS 1.x

On my previous article I already show you simple method to parse TLV message using JPOS version 2.x. In this article, I change the JPOS version to 1.x. Since the ISOMsg class does not have getBytes() method to the specific data element, we need new method to get bytes of data element that has TLV data.

//this is method to change String to array of byte
private byte[] stringtoArByte(String value) {
	byte[] hasil = new byte[value.length()];
	for (int i = 0; i < value.length(); i++) {
		hasil[i] = (byte) value.charAt(i);
	}
	return hasil;
}

//method to print all EMV Data
public void printData(ISOMsg isoMsg){
    //EMV data on DE55
    if (iSOMsg.hasField(55)) {
        TLVList tlvData = new TLVList();
        tlvData.unpack(stringtoArByte(isoMsg.getString(55)));
        for (TLVMsg tLVMsg : tlvData.getTags()) {
            System.out.println("EMVtag : " + Integer.toHexString(tLVMsg.getTag()));
            System.out.println("Value on String Type : " + ISOUtil.hexString(tLVMsg.getValue()));
        }
    }
}

If you want to get value from specific tag, this is the sample example.

public boolean hasTag(int tag){
	return tlvData.findIndex(tag) > -1;
}

//value of tag use hexaint 
//example for PAN Sequence Number, you use 0x5F34
public void printSpecificTag(int tag, TLVList tlvData){
	String toPrint = "No Data..!!";
	if(hasTag(tag)){
		toPrint = "Value from tag " + Integer.toHexString(tag) + " : " + tlvData.find(tag).getValue()
	} 
	System.out.println(toPrint);
}

Hope this simpel article can help 🙂