Fungsi webhook adalah menangkap pesan masuk kemudian dimasukkan ke database atau diintegrasikan dengan aplikasi lain.
pesan masuk yang ditangkap dalam bentuk JSON berikut contohnya
{
"from": "6285603051722",
"to": "6285156108635",
"message": "help",
"media": "url",
"timestamp": "2021-10-10 11:49:50",
}
From adalah nomor pengirim pesan
to adalah nomor yg terkoneksi dengan whacenter, yaitu nomor penerima pesan
message adalah pesan yang diterima, pesan yg diterima bisa berupa text .
media adalah pesan berupa gambar atau file docx, xlsx, pdf
timestamp adalah waktu menerima pesan.
untuk menangkap pesan dari webhook whacenter bisa menggunakan script ini
$data = json_decode(file_get_contents('php://input'), true);
$number = $data["from"];
$message = $data["message"];
script diatas adalah contoh jika mengunakan PHP.
contoh script webhook.php
<?php
$data = json_decode(file_get_contents('php://input'), true);
$number = $data["from"];
$message = $data["message"];
switch($message) {
case 'ID':
$msg = 'Your number = '.$number.'';
sendMessage($number, $msg, $file);
break;
case 'MACBOOK':
$msg = 'MACBOOK PRO M1 Harga Rp. 20.999.000';
$file = "https://cdn.eraspace.com/pub/media/catalog/product/m/a/macbook_pro_m1_space_gray_1_2.jpg";
sendMessage($number, $msg, $file);
break;
}
function sendMessage($number, $message, $file) {
$url = 'https://app.whacenter.com/api/send';
$ch = curl_init($url);
$data = array(
'device_id' => 'xxx', //sesuaikan dg device id anda
'number' => $number,
'message' => $message,
'file' => $file,
);
$payload = $data;
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
curl_close($ch);
//echo $result;
}
?>
Langkah-langkahnya untuk mengatur webhook adalah
- masuk ke hosting / cpanel, buat sebuah file misalanya webhook.php
- copy paste script di atas
- sesuaikan device id
- masuk ke dashboard whacenter, masukkan link url webhook (https)
agar bisa pakai webhooh apakah cukup sewa hosting?
ya betul
data wa yang masuk tersimpan di mana?
di file webhook.php nya atau di mana?
untuk pesan yang berformat misalnya ada enter dan bold gimana mas format curl nya ?
Apakah ada setting an untuk Wait Time ( Tidak segera me reply JIKA jika client baru saja kirim pesan lalu kirim lagi )