Commit Graph
74 Commits
Author SHA1 Message Date
Hamza-AyedandClaude Opus 5 143146c1b4 إصلاح سوكيت الراكب وتوحيد مسارات الإشعارات
سوكيت الراكب (سبب عدم ظهور معلومات السائق عند القبول):
- تطبيق الراكب كان يرسل id فقط بلا jwt، و passenger_socket.php يرفض أي
  اتصال بلا jwt ⇒ الراكب لا ينضم لغرفته أبداً ولا يستلم ride_status_change
  ولا driver_location_update. تظهر حالة القبول عبر الـ polling فقط بينما
  driver_info يصل بالسوكيت وحده. (سوكيت السائق يعتبر الـ jwt اختيارياً،
  ومن هنا جاء التباين بين التطبيقين.)
- cancelled_by_driver كان يسقط من switch حالات الراكب فيبقى معلّقاً بعد
  إلغاء السائق.
- حماية socket (late) من القراءة قبل التهيئة عند الانسحاب بلا jwt.

الإشعارات والرسائل (سبب "مرات توصل ومرات لا"):
- جدول tokens يخزّن توكن الراكب مشفّراً، و getRideWaiting.php كان يرجعه
  بلا فك تشفير ⇒ من يقبل من قائمة السوق يحمل blob مشفّراً يستخدمه كـ FCM
  target فيرفضه FCM بـ 400: لا إشعار قبول ولا رسائل. ومن يقبل من الـ
  dispatch/FCM يحمل نصاً صريحاً فتعمل. الفرق كان في طريقة القبول.
- acceptRide.php يحلّ التوكن من القاعدة دائماً ولا يثق بالعميل (أصحّ أمنياً).
- market_new_ride كان لا يحمل passengerId ولا الإحداثيات فتصل "null"؛
  أُضيفت بلا أي PII لأن الحمولة تُبَثّ لكل سائق قريب لا للفائز فقط.
- send_fcm.php: مهلة على OAuth (كان يعلّق حتى مهلة PHP فتُسقط الرسالة
  بصمت)، توحيد ding→default لأندرويد، وحقن title/body/tone في data
  مطابقةً لـ FcmService.
- تطبيق السائق يقرأ title/body من data أولاً مثل الراكب، ولا يعرض فقاعة
  فارغة للرسائل الصامتة.

السوكيت والإعدادات:
- forwardLocationToPassengerSocket كان يقرأ lat/lng والحمولة فيها
  latitude/longitude ⇒ المسافة تخرج ضخمة والـ throttle معطّل تماماً
  فيُعاد التوجيه مع كل نبضة GPS.
- notifyPassengerOnRideServer كان يرجع null بصمت مطلق عند حجب العنوان.
- العنوان الافتراضي لسيرفر الموقع كان nginx/loction_server/driver_socket.php
  وهو ديمون Workerman لا يُخدَم عبر nginx ⇒ صار socket_driver:2021.
  (LOCATION_API_URL بقي على nginx لأن api_get_nearby.php سكربت عادي.)
- ride_server/passenger_socket.php (النسخة التي يشغّلها Docker) كانت ناقصة
  كل كود مواصلاتي الموجود في passenger_server/ ⇒ نُقل مع REDIS_HOST.
- .env.example: ALLOWED_SOCKET_URLS يغطّي أسماء حاويات Docker، وإضافة
  PASSENGER_SOCKET_INTERNAL_URL.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-26 15:47:23 +03:00
Hamza-Ayed 474c212bcb refactor: migrate amount fields to decimal and implement location service restriction for unsupported regions 2026-07-24 15:08:37 +03:00
Hamza-Ayed e7629a9eb9 Update: 2026-07-23 22:14:10 2026-07-23 22:14:10 +03:00
Hamza-Ayed 92eb7fe25d Update: 2026-07-23 20:43:21 2026-07-23 20:43:21 +03:00
Hamza-Ayed a7fa40dc31 Update: 2026-07-23 00:11:36 2026-07-23 00:11:37 +03:00
Hamza-Ayed 771b436c69 Update: 2026-07-22 17:58:19 2026-07-22 17:58:19 +03:00
Hamza-Ayed 939c7a9c2c Update: 2026-07-22 17:49:27 2026-07-22 17:49:28 +03:00
Hamza-Ayed 085b180bdb feat: implement secure OTP-based payout workflow with dynamic fee calculation and improved authentication checks 2026-07-19 01:51:39 +03:00
Hamza-Ayed c6f48a1f91 Update: 2026-07-13 22:23:21 2026-07-13 22:23:22 +03:00
Hamza-Ayed fd3f4a365a Update: 2026-07-13 18:23:52 2026-07-13 18:23:52 +03:00
Hamza-Ayed 653d73422f Update: 2026-07-12 18:53:59 2026-07-12 18:53:59 +03:00
Hamza-Ayed 08340493c0 Update: 2026-07-12 06:04:42 2026-07-12 06:04:42 +03:00
Hamza-Ayed 24fb56f08f Update: 2026-07-12 05:40:28 2026-07-12 05:40:28 +03:00
Hamza-Ayed 1fa517acc9 chore: remove service_unavailable_area translation keys and add mowasalaty strategy report 2026-07-12 02:53:36 +03:00
Hamza-Ayed 8f4bb1631c Update: 2026-07-12 00:24:19 2026-07-12 00:24:19 +03:00
Hamza-Ayed 607c9bd9f4 Update: 2026-07-10 19:42:49 2026-07-10 19:42:50 +03:00
Hamza-Ayed 2bce11b940 Update: 2026-07-10 17:26:15 2026-07-10 17:26:16 +03:00
Hamza-Ayed b18fd027b6 Update: 2026-07-10 03:04:06 2026-07-10 03:04:06 +03:00
Hamza-Ayed 2ff7450d0b Update: 2026-07-09 17:18:06 2026-07-09 17:18:06 +03:00
Hamza-Ayed 5e6aeb7908 refactor: unify device analysis and performance testing logic for improved module consistency 2026-07-09 15:09:02 +03:00
Hamza-Ayed 87dc925ea7 Refactor(Auth): Complete auth folder restructuring, security patches, and Flutter endpoint updates 2026-07-09 05:22:05 +03:00
Hamza-Ayed 45859883a5 Update: 2026-07-09 05:02:10 2026-07-09 05:02:10 +03:00
Hamza-Ayed 03e9d648a1 chore: update localization strings for driver and rider apps 2026-07-09 04:22:12 +03:00
Hamza-Ayed a526dae042 Update: 2026-07-09 04:13:14 2026-07-09 04:13:14 +03:00
Hamza-Ayed 70718946f5 Update: 2026-07-09 03:41:48 2026-07-09 03:41:48 +03:00
Hamza-Ayed 7dff7b6973 Update: 2026-07-09 01:55:25 2026-07-09 01:55:25 +03:00
Hamza-Ayed 8e6dbf96e2 Update: 2026-07-06 04:25:14 2026-07-06 04:25:14 +03:00
Hamza-Ayed 3e0b4cbf64 Update: 2026-07-04 18:43:56 2026-07-04 18:43:57 +03:00
Hamza-Ayed 3412f1b753 Update: 2026-07-04 17:02:24 2026-07-04 17:02:24 +03:00
Hamza-Ayed 838e5ec656 Update: 2026-07-04 16:47:10 2026-07-04 16:47:11 +03:00
Hamza-Ayed c8fdd1bb5a Update: 2026-07-04 16:16:49 2026-07-04 16:16:50 +03:00
Hamza-Ayed c7bd644b88 Update: 2026-07-04 04:05:08 2026-07-04 04:05:08 +03:00
Hamza-Ayed 6876d9bc54 Update: 2026-07-02 17:44:58 2026-07-02 17:44:59 +03:00
Hamza-Ayed 5d14493ff4 Update: 2026-07-02 16:52:25 2026-07-02 16:52:25 +03:00
Hamza-Ayed 75e6fc42d7 Update: 2026-07-02 15:35:12 2026-07-02 15:35:12 +03:00
Hamza-Ayed 05d047d871 Update: 2026-07-02 05:27:04 2026-07-02 05:27:05 +03:00
Hamza-Ayed d695a4e812 Update: 2026-06-29 00:07:33 2026-06-29 00:07:33 +03:00
Hamza-Ayed a87cb7c082 refactor: optimize wallet JWT management, update security checks for debug builds, and improve pricing data parsing 2026-06-27 22:50:28 +03:00
Hamza-Ayed 43e3f8c939 Fix: update destination limits to 3 and sync with Redis 2026-06-27 17:49:03 +03:00
Hamza-Ayed 5fed555e44 Update: 2026-06-27 05:53:15 2026-06-27 05:53:15 +03:00
Hamza-Ayed 8efd4563db Update: 2026-06-27 05:42:53 2026-06-27 05:42:53 +03:00
Hamza-Ayed bf1416b2a7 Update: 2026-06-27 05:36:53 2026-06-27 05:36:53 +03:00
Hamza-Ayed f069f2b24f Update: 2026-06-27 04:58:21 2026-06-27 04:58:21 +03:00
Hamza-Ayed 8be2af314e Update: 2026-06-27 04:37:33 2026-06-27 04:37:33 +03:00
Hamza-Ayed 8993aa0a6b Update: 2026-06-27 04:21:17 2026-06-27 04:21:17 +03:00
Hamza-Ayed 9ded734e38 Update: 2026-06-26 17:29:23 2026-06-26 17:29:23 +03:00
Hamza-Ayed 75e4524329 fix upload: parse nested message.url, backup retries=1, connect.php auth 2026-06-25 04:30:52 +03:00
Hamza-Ayed 89c1348f08 Update: 2026-06-25 03:28:59 2026-06-25 03:28:59 +03:00
Hamza-Ayed 85e85fe4d3 Update: 2026-06-25 02:55:24 2026-06-25 02:55:24 +03:00
Hamza-Ayed e73be65a72 Update: 2026-06-21 18:58:05 2026-06-21 18:58:13 +03:00