Files
manjapro_v6/load/koneksi_off.php
T
2025-10-07 21:01:15 +07:00

63 lines
2.6 KiB
PHP

<?php
include "/www/wwwroot/bilspro/config/connect.php";
include "/www/wwwroot/bilspro/config/whatsapp_api.php";
// include "../config/connect.php";
// include "../config/whatsapp_api.php";
// Ambil data dari tabel setting_mikrotik
$stmt = $pdo->prepare("SELECT id, pppa, id_data_server, nama FROM setting_mikrotik ");
$stmt->execute();
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
if ($rows) {
foreach ($rows as $row) {
$mik = $row['nama'];
// Kirim Pesan Koneksi Off ke Pelanggan
// Berdasarkan data server yang mengaktifkan pesan tersebut dan sesuai interval nya
$stmtSV = $pdo->prepare("SELECT status_koneksi_off, interval_koneksi_off FROM data_server WHERE id = :idserver");
$stmtSV->bindValue(':idserver', $row['id_data_server']);
$stmtSV->execute();
$SV = $stmtSV->fetch(PDO::FETCH_ASSOC);
if ($SV['status_koneksi_off'] === 'Aktif' && !empty($SV['interval_koneksi_off'])) {
// Konversi interval koneksi off ke integer
$intervalMenit = (int)$SV['interval_koneksi_off'];
// Hitung batas waktu berdasarkan interval
$batasWaktu = date('Y-m-d H:i:s', strtotime("-$intervalMenit minutes"));
// Siapkan dan eksekusi query untuk mengambil pelanggan
$stmtInt = $pdo->prepare("SELECT id, id_data_server, nomor_whatsapp FROM pelanggan WHERE pesan_off = '0' AND status = 'aktif' AND id_setting_mikrotik = :id AND time_update < :batasWaktu");
$stmtInt->bindValue(':id', $row['id']);
$stmtInt->bindValue(':batasWaktu', $batasWaktu);
$stmtInt->execute();
$Intv = $stmtInt->fetchAll(PDO::FETCH_ASSOC);
if ($Intv) {
foreach ($Intv as $Val) {
$APIwa = new PesanWA();
$APIwa->Create_Pesan($Val['id_data_server'], $Val['id'], 'Pesan Koneksi Off');
$Pesan = $APIwa->Get_Pesan();
$APIwa->Send_Pesan($Val['id_data_server'], ['sendMessage','Pesan Koneksi Off'], [$Val['nomor_whatsapp']], $Pesan);
$stmtInt = $pdo->prepare("UPDATE pelanggan SET pesan_off = '1' WHERE id = :id");
$stmtInt->bindValue(':id', $Val['id']);
$stmtInt->execute();
echo $mik." Pesan ke => ".$Val['nomor_whatsapp']." => ".$batasWaktu."\n";
}
} else {
echo $mik." Data pelanggan tidak ada\n".$batasWaktu;
}
} else {
echo $mik." Status koneksi tidak aktif atau interval tidak tersedia.\n";
}
}
} else {
echo "No data found.\n";
}
?>