From 0cad8778dcff33a879f05dd2cc73799509fddd90 Mon Sep 17 00:00:00 2001 From: Hamza-Ayed Date: Sat, 23 May 2026 16:56:21 +0300 Subject: [PATCH] =?UTF-8?q?=D8=A5=D8=B6=D8=A7=D9=81=D8=A9=20=D9=88=D8=A7?= =?UTF-8?q?=D8=AC=D9=87=D8=A9=20=D9=88=D9=8A=D8=A8=20=D9=85=D8=B3=D8=AD=20?= =?UTF-8?q?=D9=83=D9=88=D8=AF=20=D8=A7=D9=84=D9=80=20QR=20=D9=84=D9=84?= =?UTF-8?q?=D9=88=D8=A7=D8=AA=D8=B3=D8=A7=D8=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/api/whatsapp-webhook.php | 170 +++++++++++++++++++++++++++++++ 1 file changed, 170 insertions(+) create mode 100644 backend/api/whatsapp-webhook.php diff --git a/backend/api/whatsapp-webhook.php b/backend/api/whatsapp-webhook.php new file mode 100644 index 0000000..a97ab9f --- /dev/null +++ b/backend/api/whatsapp-webhook.php @@ -0,0 +1,170 @@ + false, 'message' => 'unauthorized']); + exit; + } + + $input = json_decode(file_get_contents('php://input'), true); + if ($input && isset($input['state'])) { + $state = $input['state']; + $redis->set("whatsapp:status", $state); + + if ($state === 'waiting_qr' && isset($input['qr_code'])) { + // Store QR code for 60 seconds + $redis->setex("whatsapp:qr", 60, $input['qr_code']); + } elseif ($state === 'connected') { + $redis->del("whatsapp:qr"); + if (isset($input['phone'])) { + $redis->set("whatsapp:phone", $input['phone']); + } + } elseif ($state === 'disconnected') { + $redis->del("whatsapp:qr"); + $redis->del("whatsapp:phone"); + } + } + + echo json_encode(['success' => true]); + exit; +} + +// Handle GET requests (Human Web Interface to scan QR code) +$status = $redis->get("whatsapp:status") ?: 'disconnected'; +$qrCode = $redis->get("whatsapp:qr"); +$phone = $redis->get("whatsapp:phone"); +?> + + + + + + إعداد بوابة الواتساب — Flash Call OTP + + + + + +
+

ربط بوابة الواتساب بالخدمة

+ + +
متصل بنجاح ✅
+

البوابة نشطة حالياً ومتصلة بالرقم: +

+

يمكنك البدء بإرسال الرسائل الآن!

+ +
بانتظار المسح (QR) 📲
+

افتح الواتساب على هاتفك -> الأجهزة المرتبطة -> ربط جهاز، ثم امسح الكود أدناه:

+ +
+ + + + +
غير متصل ❌
+

+ الرجاء تشغيل الجلسة أولاً عن طريق إرسال طلب البدء للبوابة من بوستمان أو سكريبت التشغيل. +

+ + + +
+

حالة النظام الحالية:

+
+
+ +