From 2266d28416d967d52c0a08da4a415f7f12e7e4cc Mon Sep 17 00:00:00 2001 From: Hamza-Ayed Date: Wed, 29 Apr 2026 16:00:07 +0300 Subject: [PATCH] 20 --- functions.php | 24 +++++++++++------------- loginWallet.php | 4 ++-- ride/rides/arrive_ride.php | 3 ++- ride/rides/start_ride.php | 4 +++- 4 files changed, 18 insertions(+), 17 deletions(-) diff --git a/functions.php b/functions.php index 9b890b4..85ae300 100755 --- a/functions.php +++ b/functions.php @@ -8,7 +8,7 @@ use Firebase\JWT\SignatureInvalidException; use Firebase\JWT\BeforeValidException; -$INTERNAL_KEY = trim(file_get_contents(getenv('INTERNAL_SOCKET_KEY_PATH'))); +$INTERNAL_KEY = trim((string)@file_get_contents('/home/intaleq-api/.internal_socket_key')); /** @@ -158,9 +158,8 @@ function findBestDrivers($con, $lat, $lng, $carType) { // --- دالة مساعدة لمخاطبة سيرفر السائقين (Location Socket) --- function notifyDriversRideTaken($rideId, $winnerDriverId) { // رابط سيرفر السائقين الداخلي (نفس البورت المستخدم في driver_socket.php) - $url = getenv('LOCATION_SOCKET_URL'); - if (!$url) throw new RuntimeException('LOCATION_SOCKET_URL not configured'); - $INTERNAL_KEY = trim(file_get_contents(getenv('INTERNAL_SOCKET_KEY_PATH'))); + $url = "http://188.68.36.205:2021"; + $INTERNAL_KEY = trim((string)@file_get_contents('/home/intaleq-api/.internal_socket_key')); $postData = [ 'action' => 'ride_taken_event', // هذا الأكشن الجديد في السوكيت @@ -181,9 +180,8 @@ function notifyDriversRideTaken($rideId, $winnerDriverId) { } function notifyDriversOnLocationServer($drivers_ids_array, $payload, $rideId = null) { // رابط سيرفر اللوكيشن الخارجي - $url = getenv('LOCATION_SOCKET_URL'); - if (!$url) throw new RuntimeException('LOCATION_SOCKET_URL not configured'); - $INTERNAL_KEY = trim(file_get_contents(getenv('INTERNAL_SOCKET_KEY_PATH'))); + $url = "http://188.68.36.205:2021"; + $INTERNAL_KEY = trim((string)@file_get_contents('/home/intaleq-api/.internal_socket_key')); $postData = [ 'action' => 'dispatch_order', // اسم الحدث المتفق عليه في socket_server.php هناك @@ -217,13 +215,13 @@ function notifyDriversOnLocationServer($drivers_ids_array, $payload, $rideId = n * تخاطب السوكيت الموجود محلياً على نفس السيرفر */ function notifyPassengerOnRideServer($passenger_id, $payload) { - // الرابط المحلي لسيرفر سوكيت الركاب - $url = getenv('PASSENGER_SOCKET_URL'); - if (!$url) { - error_log("[FATAL] PASSENGER_SOCKET_URL not configured"); - throw new RuntimeException('PASSENGER_SOCKET_URL not configured'); + // الرابط لسيرفر سوكيت الركاب — IP مباشر لتجاوز مشاكل الجدار الناري والدومين + $url = "http://188.68.36.205:3031"; + $INTERNAL_KEY = trim((string)@file_get_contents('/home/intaleq-api/.internal_socket_key')); + + if (empty($INTERNAL_KEY)) { + error_log("[SOCKET_CRITICAL] Internal key missing at /home/intaleq-api/.internal_socket_key"); } - $INTERNAL_KEY = trim(file_get_contents(getenv('INTERNAL_SOCKET_KEY_PATH'))); $postData = [ 'action' => 'update_ride_status', diff --git a/loginWallet.php b/loginWallet.php index 978545f..f1a73e7 100755 --- a/loginWallet.php +++ b/loginWallet.php @@ -25,8 +25,8 @@ try { $audience = filterRequest('aud'); $fingerPrint = filterRequest('fingerPrint') ?? filterRequest('fingerprint'); - $allowed1 = getenv('allowed1'); - $allowed2 = getenv('allowed2'); + $allowed1 = getenv('allowedWallet1'); + $allowed2 = getenv('allowedWallet2'); $allowedAudiences = array_values(array_filter([$allowed1, $allowed2])); $passwordnewpassenger = getenv('passwordnewpassenger'); diff --git a/ride/rides/arrive_ride.php b/ride/rides/arrive_ride.php index 37cdf18..9363740 100755 --- a/ride/rides/arrive_ride.php +++ b/ride/rides/arrive_ride.php @@ -51,7 +51,8 @@ try { if (!empty($passengerToken)) { $fcmData = [ 'category' => 'Arrive Ride', // نفس الاسم القديم لضمان عمل التطبيق - 'ride_id' => (string)$rideId + 'ride_id' => (string)$rideId, + 'status' => 'arrived' ]; // 🔥 استخدام sendFCM_Internal كرسالة صامتة diff --git a/ride/rides/start_ride.php b/ride/rides/start_ride.php index e987895..82fe456 100755 --- a/ride/rides/start_ride.php +++ b/ride/rides/start_ride.php @@ -75,7 +75,9 @@ try { // ب) إرسال FCM (Internal) if (!empty($passengerToken)) { $fcmData = [ - 'ride_id' => (string)$ride_id + 'category' => 'Trip is Begin', + 'ride_id' => (string)$ride_id, + 'status' => 'started' ]; // 🔥 استخدام sendFCM_Internal كرسالة صامتة