LoERbTcWHiQxdmcpf4fiSjgWN9qHi76MAUgOelk0

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;

$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.\r\n" . parse_url(site_url(), PHP_URL_HOST);


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 . ".\r\n" . parse_url(site_url(), PHP_URL_HOST);


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.
M Faishal Hidayat
M Faishal Hidayat, lahir di Cianjur tapi besar di Bogor. Kuliah manajemen dan ekonomi tapi sangat tertarik dengan dunia teknologi khususnya segala sesuatu yang berhubungan dengan website.
SHARE

Related Posts

Subscribe to get free updates

Post a Comment