Webhook pesan dibaca
Mengatur Endpoint
Untuk mulai menggunakan webhook, anda perlu mengatur url webhook pada perangkat anda yang sudah terhubung di Wa Vave, Url webhook ini akan menerima data dari sistem kami setiap kali peristiwa terjadi,
Url webhook ini harus menerima permintaan POST dengan payload JSON.
Menangani Permintaan
Salin kode dibawah dan simpan di server anda dengan nama file misalnya webhook.php
<?php
header('Content-Type: application/json; charset=utf-8');
$data = json_decode(file_get_contents('php://input'), true);
$apiKey = 'YOUR_API_KEY'; // API Key
if ($data) {
$device = $data['device'] ?? '';
$from = $data['from'] ?? '';
$profilename = $data['profilename'] ?? '';
$messageid = $data['messageid'] ?? '';
$type = $data['type'] ?? ''; // text, textreply, imagereply, image, video, document, audio, sticker, location, interactive, reaction
$messagebody = $data['messagebody'] ?? '';
$isForwarded = $data['isForwarded'] ?? '';
$dataMedia = $data['dataMedia'] ?? '';
$group = $data['group'] ?? '';
$button = $data['button'] ?? '';
$CatalogDetails = $data['CatalogDetails'] ?? '';
$dataforwarded = $data['dataforwarded'] ?? '';
$locationName = $data['locationName'] ?? '';
$Latitude = $data['Latitude'] ?? '';
$Longitude = $data['Longitude'] ?? '';
$reactionsid = $data['reactionsid'] ?? '';
$deviceStatus = $data['deviceStatus'] ?? '';
$code = $data['code'] ?? '';
$reason = $data['reason'] ?? '';
$status = $data['status'] ?? '';
$dataMedia = json_encode($dataMedia, JSON_UNESCAPED_SLASHES);
$messagebody = json_encode($messagebody, JSON_UNESCAPED_UNICODE);
function KirimPesan($to, $pesan, $device, $type, $url, $delay, $apiKey) {
$data = json_encode([
'from' => $device,
'to' => $to,
'message' => $pesan,
'Type' => $type,
'url' => $url,
'delay' => $delay
]);
// Endpoint API
$endpoint = 'https://api.wavave.com/v1/send';
$ch = curl_init($endpoint);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json',
'Content-Length: ' . strlen($data),
'Authorization: Bearer ' . $apiKey
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
return $response;
}
$from = 62812345678; // Sesuaikan dengan nomor pengirim Anda
$pesan = "Halo $profilename, ini adalah balasan otomatis!";
$delay = 5; // 5 detik
$jenispesan = 'text'; // text atau media
$target = $data['from'] ?? ''; // Nomor penerima
$response = KirimPesan($target, $pesan, $from, $jenispesan, $url, $delay, $apiKey);
echo $response;
} else {
echo json_encode(['error' => 'No data received']);
}
Tangani pesan dibaca
Webhook anda akan menerima data secara real time dari sistem kami ketika ada pesan yang sudah dibaca oleh pengguna, berikut payload yang akan diterima oleh webhook anda.
{
"device": "62812345678",
"from": "62812345678",
"profilename": "Wa Vave",
"messageid": "3EB0F7E3D4B071944518E3",
"status": "read"
}
Penjelasan Pesan Dibaca
Properti | Nilai | Deskripsi |
---|---|---|
device | Number | Perangkat anda yang terhubung dengan Wa Vave dalam format internasional : 628123456789 |
from | Number | Nomor whatsapp yang anda kirimi pesan sebelumnya dalam format internasional : 628123456789 |
profilename | String | Nama yang tertera pada perangkat terhubung |
messageid | String | ID pesan unik yang sebelumnya anda terima |
status | String | read = Pesan sudah dibaca oleh pengguna failed = Terdapat kesalahan tidak terduga meski jarang terjadi play = Pesan audio/voicenote/video yang anda kirim telah diputar oleh pengguna |