prepare("SELECT * FROM master_template_pesan WHERE id = :id");
$stmt3->execute([':id' => $page[1]]);
$pesan = $stmt3->fetch(PDO::FETCH_ASSOC);
$pesanDb = json_decode($pesan['pesan_official'], true);
if ($pesan['nama'] == 'Pesan Melunasi Tagihan' OR
$pesan['nama'] == 'Pesan Isolir Pelanggan' OR
$pesan['nama'] == 'Pesan Peringatan Tagihan' OR
$pesan['nama'] == 'Pesan Kirim Tagihan') {
$baseVariable = [
[ "key" => "#usr", "label" => "Nama Pelanggan" ],
[ "key" => "#add", "label" => "Alamat Pelanggan" ],
[ "key" => "#ppp", "label" => "PPPOE Pelanggan / ID Pelanggan" ],
[ "key" => "#lyn", "label" => "Paket Berlangganan" ],
[ "key" => "#hly", "label" => "Harga Layanan" ],
[ "key" => "#jns", "label" => "Jenis Layanan" ],
[ "key" => "#ket", "label" => "Keterangan Tagihan" ],
[ "key" => "#jum", "label" => "Jumlah Tagihan" ],
[ "key" => "#ppn", "label" => "PPN" ],
[ "key" => "#unk", "label" => "Kode Unik (for payment gateway)" ],
[ "key" => "#tot", "label" => "Total Tagihan" ],
[ "key" => "#lmt", "label" => "Limit Pembayaran" ],
[ "key" => "#lnk", "label" => "Link Payment Gateway" ]
];
} else {
$baseVariable = [
[ "key" => "#usr", "label" => "Nama Pelanggan" ],
[ "key" => "#add", "label" => "Alamat Pelanggan" ],
[ "key" => "#ppp", "label" => "PPPOE Pelanggan / ID Pelanggan" ],
[ "key" => "#lyn", "label" => "Paket Berlangganan" ],
[ "key" => "#hly", "label" => "Harga Layanan" ],
[ "key" => "#jns", "label" => "Jenis Layanan" ]
];
}
?>
prepare($sql);
$stmt3->execute($ids);
$wacapi = $stmt3->fetch(PDO::FETCH_ASSOC);
$accessToken = $wacapi['token_access'];
$phoneNumberId = $wacapi['waba_id'];
// URL endpoint template
$url = "https://graph.facebook.com/v17.0/$phoneNumberId/message_templates";
// Request ke Cloud API
$ch = curl_init();
curl_setopt_array($ch, [
CURLOPT_URL => $url,
CURLOPT_HTTPHEADER => ["Authorization: Bearer $accessToken"],
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 15
]);
$response = curl_exec($ch);
if (curl_errno($ch)) {
throw new Exception("cURL Error: " . curl_error($ch));
}
curl_close($ch);
// Decode JSON
$data = json_decode($response, true);
if (!isset($data['data'])) {
throw new Exception("Gagal mengambil template dari Cloud API. Response: " . $response);
}
// Ambil list template
$templates = $data['data'] ?? [];
// echo "
";
// print_r($templates);
// echo "";
// Template yang terpilih (dari GET)
$selectedTemplate = $_GET['template'] ?? '';
} catch (Exception $e) {
echo "
Error: " . htmlspecialchars($e->getMessage()) . "
";
$templates = [];
$selectedTemplate = '';
}
?>
PERHATIAN..!
Untuk memposisikan data dari pelanggan silahkan isi dengan Variabel di bawah ini :
| Variabel |
|
Label |
' . $base['key'] . ' |
: |
' . $base['label'] . ' |
';
}
?>
prepare("SELECT * FROM master_template_pesan WHERE id = :id");
$stmt3->execute([':id' => $page[1]]);
$pesan = $stmt3->fetch(PDO::FETCH_ASSOC);
$stmt3 = $pdo->prepare("SELECT status_payment_gateway FROM data_server WHERE id = :ids");
$stmt3->execute([':ids' => $pesan['id_data_server']]);
$server = $stmt3->fetch(PDO::FETCH_ASSOC);
// print_r($_SESSION);
?>
Warning..!!
Untuk memposisikan data dari pelanggan silahkan isi dengan Variabel di bawah ini :
#usr => Nama Pelanggan
#add => Alamat Pelanggan
#ppp => PPPOE Pelanggan / ID Pelanggan
#lyn => Paket Berlangganan
#hly => Harga Layanan
#jns => Jenis Layanan
#ket => Keterangan Tagihan
#jum => Jumlah Tagihan
#ppn => PPN
#unk => Kode Unik (for payment gateway)
#tot => Total Tagihan
#lmt => Limit Pembayaran
#lnk => Link Payment Gateway
Contoh :
*Tagihan layanan internet*
Nama : #usr
Jumlah Tagihan : #jum
PPN 11% : #ppn
Total Tagihan : #tot
PERHATIAN..!!
Jika Status Pesan Aktif dan Interval di isi, maka pelanggan yang aktif dan koneksi nya mati akan di beri pesan otomatis setelah Interval yang telah anda tentukan
prepare($query);
// Bind parameter utama
$stmt->bindValue(':pesan', $_POST['fpesan']);
// Bind jika ada file upload
if ($SqlPost !== '') {
$stmt->bindValue(':nameFile', $nameFile);
}
// Bind jika pesan koneksi off
if ($sqlPostOff !== '') {
$stmt->bindValue(':status_koneksi_off', $status_koneksi_off);
$stmt->bindValue(':interval_koneksi_off', $interval);
}
$stmt->bindValue(':nama', $pesan['nama']);
try {
$stmt->execute();
$rows = $stmt->rowCount();
if ($rows > 0) {
sweetAlert("Data telah diubah ($rows baris terpengaruh)", "success");
} else {
sweetAlert("Tidak ada data yang berubah", "info");
}
} catch (PDOException $e) {
echo "Gagal update data: " . $e->getMessage();
}
}
?>
prepare("SELECT id FROM pelanggan WHERE status = 'aktif' AND id_data_server = '$SvId'");
$stmt->execute();
$data = $stmt->fetchAll();
$id = $data[0]['id'];
$url = "";
$APIwa->Create_Pesan($SvId,$id,$pesan['nama']);
} elseif ($pesan['nama'] == 'Pesan Melunasi Tagihan' || $pesan['nama'] == 'Pesan Isolir Pelanggan' || $pesan['nama'] == 'Pesan Peringatan Tagihan' || $pesan['nama'] == 'Pesan Kirim Tagihan') {
if($server['status_payment_gateway'] == 'ACTIVE' AND $pesan['nama'] == 'Pesan Kirim Tagihan') {
$sqldata = "SELECT id,img_invoice FROM tagihan WHERE transaction_link != '' AND id_data_server = '$SvId'";
} else {
$sqldata = "SELECT id,img_invoice FROM tagihan WHERE status = 'lunas' AND id_data_server = '$SvId'";
}
$stmt = $pdo->prepare($sqldata);
$stmt->execute();
$data = $stmt->fetchAll();
$id = $data[0]['id'];
$url = baseurl()."/invoice/".$data[0]['img_invoice'];
$APIwa->Create_Pesan($SvId,$id,$pesan['nama'],'tag');
}
$Pesan = $APIwa->Get_Pesan();
if ($pesan['nama'] == 'Pesan Melunasi Tagihan') {
$APIwa->Send_Pesan($SvId,'sendMediaFromUrl',[$_POST['nomor']],$Pesan, $url);
} else {
$APIwa->Send_Pesan($SvId,'sendMessage',[$_POST['nomor']],$Pesan);
}
sweetAlert("Pesan akan segera di kirim ke nomor ".$_POST['nomor'],"success");
}
?>