diff --git a/backend/bot/cron_scheduled_rides.php b/backend/bot/cron_scheduled_rides.php index 51c469ea..70458f58 100644 --- a/backend/bot/cron_scheduled_rides.php +++ b/backend/bot/cron_scheduled_rides.php @@ -208,8 +208,10 @@ try { fwrite(STDERR, '[scheduled] تعذّر نشر التوقّع: ' . $e->getMessage() . "\n"); } -echo "[scheduled] أُطلق $dispatched، تعذّر $failed، انتهى $expired،" - . " ذُكِّر $reminded، وخلايا التوقّع $cells\n"; +// ‏الأقواس ضرورية: الفاصلة العربية `،` بايتاتها ≥ 0x80، وPHP يعدّها جزءاً +// ‏صالحاً من اسم المتغيّر — فبدونها يُقرأ "$dispatched،" متغيّراً آخر فارغاً. +echo "[scheduled] أُطلق {$dispatched}، تعذّر {$failed}، انتهى {$expired}،" + . " ذُكِّر {$reminded}، وخلايا التوقّع {$cells}\n"; /** diff --git a/docker/crontab.production b/docker/crontab.production index 356201b1..b912d764 100644 --- a/docker/crontab.production +++ b/docker/crontab.production @@ -63,6 +63,15 @@ DEX=/usr/bin/docker compose -f $SIRO/docker-compose.yml exec -T php php # وكانت النسخ الثلاث تتسابق على نفس الجداول عند الساعة 3 صباحاً. 0 * * * * $DEX /var/www/backend/bot/cron_dashboard_snapshot.php >> /var/log/bot_snapshot.log 2>&1 +# ============================================================ +# الحجز المسبق (Scheduled Rides) +# ============================================================ +# يحوّل الحجوزات المستحقة إلى رحلات فعلية عبر add_ride.php، ويذكّر +# الراكب، وينشر التوقّع في Redis. بدون هذا السطر تبقى الحجوزات في +# scheduled_rides بحالة 'scheduled' إلى أن تنتهي صلاحيتها — ولا يصل +# السائق أي طلب إطلاقاً. +*/2 * * * * $DEX /var/www/backend/bot/cron_scheduled_rides.php >> /var/log/scheduled_rides.log 2>&1 + # ============================================================ # الإشعارات والتسويق # ============================================================