Initial commit with updated Auth and media ignored
This commit is contained in:
79
Admin/send_whatsapp_message.php
Executable file
79
Admin/send_whatsapp_message.php
Executable file
@@ -0,0 +1,79 @@
|
||||
<?php
|
||||
// File: send_whatsapp_message.php
|
||||
// هذا السكربت يرسل رسالة واتساب فقط باستخدام RaseelPlus API
|
||||
|
||||
require_once __DIR__ . '/../connect.php'; // فقط إذا كنت تحتاج للوصول إلى environment
|
||||
|
||||
error_log("--- [send_whatsapp_message.php] Script execution started ---");
|
||||
|
||||
// استقبال المعطيات من POST
|
||||
$receiver = filterRequest("receiver"); // رقم الهاتف
|
||||
$message = filterRequest("message"); // نص الرسالة
|
||||
|
||||
if (empty($receiver) || empty($message)) {
|
||||
error_log("[send_whatsapp_message.php] Error: Missing receiver or message.");
|
||||
jsonError('Phone number and message are required.');
|
||||
exit();
|
||||
}
|
||||
|
||||
// بيانات Raseel
|
||||
$instanceId = getenv("RASEEL_DRIVER_INSTANCE_ID");
|
||||
$accessToken = getenv("RASEEL_DRIVER_ACCESS_TOKEN");
|
||||
|
||||
// API URL
|
||||
$apiUrl = 'https://raseelplus.com/api/send';
|
||||
|
||||
// تجهيز البيانات للإرسال
|
||||
$payload = [
|
||||
"number" => $receiver,
|
||||
"type" => "text",
|
||||
"message" => $message,
|
||||
"instance_id" => $instanceId,
|
||||
"access_token"=> $accessToken
|
||||
];
|
||||
|
||||
error_log("[send_whatsapp_message.php] Sending payload: " . json_encode($payload));
|
||||
|
||||
// إرسال الطلب
|
||||
$response = callAPI("POST", $apiUrl, json_encode($payload));
|
||||
error_log("[send_whatsapp_message.php] Raw response: " . print_r($response, true));
|
||||
|
||||
// فحص الاستجابة
|
||||
if ($response && !isset($response->error) && (isset($response->status) && $response->status == 'success' || isset($response->message))) {
|
||||
jsonSuccess(null, "Message sent successfully.");
|
||||
} else {
|
||||
$errorMessage = isset($response->message) ? $response->message : "Unknown error.";
|
||||
error_log("[send_whatsapp_message.php] Failed to send: $errorMessage");
|
||||
jsonError("Failed to send message: $errorMessage");
|
||||
}
|
||||
|
||||
// دالة cURL
|
||||
function callAPI($method, $url, $data)
|
||||
{
|
||||
$curl = curl_init();
|
||||
curl_setopt_array($curl, [
|
||||
CURLOPT_URL => $url,
|
||||
CURLOPT_RETURNTRANSFER => true,
|
||||
CURLOPT_ENCODING => "",
|
||||
CURLOPT_MAXREDIRS => 10,
|
||||
CURLOPT_TIMEOUT => 30,
|
||||
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
|
||||
CURLOPT_CUSTOMREQUEST => $method,
|
||||
CURLOPT_POSTFIELDS => $data,
|
||||
CURLOPT_HTTPHEADER => [
|
||||
"Content-Type: application/json",
|
||||
"Accept: application/json"
|
||||
],
|
||||
]);
|
||||
$response = curl_exec($curl);
|
||||
$err = curl_error($curl);
|
||||
curl_close($curl);
|
||||
|
||||
if ($err) {
|
||||
error_log("[callAPI] cURL Error: $err");
|
||||
return null;
|
||||
} else {
|
||||
return json_decode($response);
|
||||
}
|
||||
}
|
||||
?>
|
||||
Reference in New Issue
Block a user