Panduan Menambahkan Keterangan Gagal

Disclaimer:
Penulis tidak bertanggung jawab atas segala akibat buruk yg mungkin terjadi seperti trx IP, trx Gagal, Harga produk terkirim ke buyer, atau akibat lainnya seperti status jomblo dari pengguna modifikasi ini. Oleh karena itu, jangan lupa BACKUP semua file php yg akan dimodif sebelumnya dan Do With Your Own Risk! - Moamer Khadafi.

Terima kasih kepada Pak Moamer Khadafi atas panduannya dalam tutorial ini. Dalam tutorial kali ini, akan dibahas mengenai cara menangkap keterangan gagal, karena default web pulsa tidak menangkap keterangan gagal. Untuk menangkap keterangan gagal akan dibagi menjadi beberapa tutorial.

Edit Mtrx.php - Menambah function get_gg

1. Login ke panel web kamu (cPanel / Direct Admin / Webuzo / Cyber Panel / dll yang kamu gunakan).

2. Cari menu File Manager, kemudian pada file manager buka public_html > application > models > cari file dengan nama Mtrx.php kemudian edit file tersebut.

3. Cari script berikut:
public function get_income($trx, $message)

4. Copy script dibawah ini dan paste diatas script pada nomor 3.
//get gagal start//
    public function get_gg($regex, $message)
    {
        $message = str_replace("\n", " ", $message);
        if (!$regex)
            return '';
        preg_match($regex, $message, $matches);
        $gg = '';
        if (isset($matches['gg'])) {
            $gg = trim($matches['gg']);
            $gg = (substr($gg, -1) == '.' ? substr($gg, 0, -1) : $gg);
        }
        return $gg;
        }
//get gagal end//

5. Simpan.

Edit Mtrx.php - Edit function set_gagal

Peletakan editan ini perlu disesuaikan dengan Mtrx.php masing-masing karena sangat mungkin sudah berbeda pada tiap webpul dan tiap versi update.

1. Cari script berikut:
$opsi = $trx->tr_opsi ? json_decode($trx->tr_opsi, true) : array();
$opsi['server_message'] = $reply_message;

2. Sesuaikan kira-kira menjadi seperti ini untuk script sekitar nomor 1:
$opsi = $trx->tr_opsi ? json_decode($trx->tr_opsi, true) : array();
$opsi['server_message'] = $reply_message;
if (is_null($gg)) {
$gg = $this->get_gg('/(GAGAL)(\. )(?P<gg>(.*?))(Sal\.|Sal |Sal:|Sal=|Saldo|Trx|Hrg|Refund)/i', $reply_message);
}
if ($gg) {
$opsi['gg'] = $gg;
}
$this->db->where('tr_id', $trx->tr_id);
if ($trx->us_id && $this->auto_refund && $trx->sv_gateway != 'sms') {
$this->db->set('tr_status_pembayaran', 'refund');
}
$this->db->set('tr_status', 'gagal');
$this->db->set('tr_opsi', json_encode($opsi));
$this->db->update('transaksi');
$consumer_message = "Trx #" . $trx->tr_id . " " . ($trx->vo_kode_trx ? $trx->
vo_kode_trx : $trx->vo_kode) . "." . ($trx->tr_id_plgn ? $trx->tr_id_plgn : $trx->
tr_no_hp) . " GAGAL. ".$gg.".";

3. Simpan.

Catatan:
Langkah nomor 2 diatas memerlukan kehati-hatian dan ketelitian dalam mengedit, karena belum tentu Mtrx.php sebuah web dengan web yang lainnya sama, kecuali web default. Disarankan menggunakan diffchecker.com untuk mengetahui perbedaan script sebelum dan sesudah di edit, web tersebut sangat berguna khususnya jika ada update dan file Mtrx.php berubah. Mohon dan tolong untuk WAJIB BACKUP file Mtrx.php yang lama sebelum di edit.

Menampilkan Keterangan Gagal di Web

1. Login ke panel web kamu (cPanel / Direct Admin / Webuzo / Cyber Panel / dll yang kamu gunakan).

2. Cari menu File Manager, kemudian pada file manager buka public_html > application > views > akun > riwayat_transaksi cari file. Edit masing-masing file produknya misal pulsa.php.

3. Search script:
</tbody>

4. Tambahkan script berikut diatas script pada nomor 3:
<?php if ($trx->tr_status == 'gagal' && isset($opsi['gg'])):?>
<tr><td>Ket</td><td><?php echo $opsi['gg'];?></td></tr>
<?php endif;?>

5. Simpan. Edit untuk semua file produk yang ada.

6. Buka public_html > application > views > history. Edit masing-masing file produknya misal pulsa.php.

7. Search:
</tbody>

8. Copy script dibawah ini dan paste diatas script pada nomor 7:
<?php if ($trx->tr_status == 'gagal'):?>
<tr>
<td>Keterangan</td>
<td>
<?php
$this->db->select('*');
$this->db->from('transaksi');
$this->db->where('tr_id', $trx->tr_id);
$query = $this->db->get();
foreach ($query->result() as $res) {
$opsi = json_decode($res->tr_opsi, true);
if (isset($opsi['gg'])){
$gg = $opsi['gg'];
echo $gg;
}
}
;?>
</td>
</tr>
<?php endif;?>

9. Simpan. Edit untuk semua file produk yang ada.

Sekian panduan untuk menambahkan keterangan gagal di web, keterangan gagal tersebut bisa muncul pada notifikasi email, reply transaksi SMS, reply transaksi Telegram, reply transaksi Jabber dan di halaman history baik member maupun non member. Jika keterangan gagal tidak tertangkap, mungkin regex gagal yang digunakan kurang tepat, cek kesini untuk solusi: Panduan Regex untuk Menangkap Keterangan Gagal.
Semoga bermanfaat, untuk kembali ke halaman tutorial script pulsa silakan klik disini.

Comments

Popular posts from this blog

Spark Sebagai Alternatif Pengganti Jabber API

Cron Job untuk Menstabilkan Transaksi

Panduan Menangkap SN Transaksi dengan Baik

Membuat Menu Teks Berjalan di Aplikasi Android V2

Modul HT - Notifikasi WA Edisi Terbatas