Pesan gambar masuk
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 gambar masuk
Webhook anda akan menerima data secara real time dari sistem kami ketika ada pesan gambar baru yang masuk, berikut payload yang akan diterima oleh webhook anda.
{
"device": "62812345678",
"type": "image",
"profilename": "Wa Vave",
"from": "62812345678",
"messageid": "3EB09A481AB11F3276BA11",
"messagebody": "Apa maksudnya dari gambar ini ya kak?",
"dataMedia": [
{
"mimetipe": "image/jpeg",
"height": 726,
"width": 720,
"url": "data:image/jpeg;base64"
}
],
"isForwarded": false
}
Penjelasan pesan gambar
Properti | Nilai | Deskripsi |
---|---|---|
device | Number | Perangkat anda yang terhubung dengan Wa Vave dalam format internasional : 628123456789 |
from | Number | Nomor whatsapp pengirim |
profilename | String | Nama pengirim |
messagebody | String | Isi pesan dari pengirim jika ada |
messageid | String | ID pesan unik yang dapat anda simpan di aplikasi |
type | String | type pesan memiliki nilai yang berbeda dan dapat digunakan untuk mengidentifikasi setiap jenis pesan yang anda terima |
dataMedia | Array of Objects | Jika anda menerima pesan gambar dengan type adalah image maka detail media tersebut akan dilampirkan disini |
mimetipe | String | Jenis MIME dari file media yang anda terima |
height | Integer | Tinggi gambar dalam piksel |
width | Integer | Lebar gambar dalam piksel |
url | String | URL gambar berbasis Base64 yang dapat diproses atau digunakan sesuai kebutuhan |
isForwarded | Boolean | Bernilai "true" jika pesan hasil "Diteruskan" oleh pengguna |