Update: 2026-06-30 02:42:49
This commit is contained in:
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
72
backend/bot/generate_10_tasks_cli.php
Normal file
72
backend/bot/generate_10_tasks_cli.php
Normal file
@@ -0,0 +1,72 @@
|
||||
<?php
|
||||
// =========================================================
|
||||
// backend/bot/generate_10_tasks_cli.php
|
||||
// CLI script: Clears tasks.json and generates 10 individual tasks
|
||||
// in STANDARD format (start_location/end_location at top level).
|
||||
//
|
||||
// Usage: php generate_10_tasks_cli.php
|
||||
// Run this on the server where tasks.json is located.
|
||||
// =========================================================
|
||||
|
||||
define('TASKS_FILE', __DIR__ . '/tasks.json');
|
||||
|
||||
$ammanLocations = [
|
||||
['name' => 'Abdoun', 'lat' => 31.9392, 'lng' => 35.8942],
|
||||
['name' => 'Jabal Amman', 'lat' => 31.9511, 'lng' => 35.9189],
|
||||
['name' => 'Sweileh', 'lat' => 32.0167, 'lng' => 35.8333],
|
||||
['name' => 'Khalda', 'lat' => 31.9861, 'lng' => 35.8450],
|
||||
['name' => 'Al-Jubaiha', 'lat' => 32.0194, 'lng' => 35.8753],
|
||||
['name' => 'Tla Al-Ali', 'lat' => 31.9961, 'lng' => 35.8647],
|
||||
['name' => 'Shmeisani', 'lat' => 31.9680, 'lng' => 35.9020],
|
||||
['name' => 'Um Uthaina', 'lat' => 31.9610, 'lng' => 35.8770],
|
||||
['name' => 'Marj Al-Hamam', 'lat' => 31.9000, 'lng' => 35.8500],
|
||||
['name' => 'Al-Muqabalain', 'lat' => 31.8720, 'lng' => 35.8900],
|
||||
['name' => 'Al-Qweismeh', 'lat' => 31.8900, 'lng' => 35.9200],
|
||||
['name' => 'Hashmi Al-Janoubi', 'lat' => 31.9350, 'lng' => 35.9350],
|
||||
['name' => 'Al-Madina', 'lat' => 31.8500, 'lng' => 35.8000],
|
||||
['name' => 'Sports City', 'lat' => 31.9820, 'lng' => 35.8880],
|
||||
];
|
||||
|
||||
$tripPairs = [
|
||||
[13, 5], // Sports City → Tla Al-Ali (~2km)
|
||||
[6, 0], // Shmeisani → Abdoun (~3km)
|
||||
[7, 1], // Um Uthaina → Jabal Amman (~4km)
|
||||
[3, 13], // Khalda → Sports City (~5km)
|
||||
[4, 2], // Al-Jubaiha → Sweileh (~5km)
|
||||
[0, 8], // Abdoun → Marj Al-Hamam (~6km)
|
||||
[1, 10], // Jabal Amman → Al-Qweismeh (~9km)
|
||||
[6, 9], // Shmeisani → Al-Muqabalain (~11km)
|
||||
[2, 12], // Sweileh → Al-Madina (~17km)
|
||||
[5, 11], // Tla Al-Ali → Hashmi (~5km)
|
||||
];
|
||||
|
||||
// Step 1: Clear old tasks
|
||||
file_put_contents(TASKS_FILE, json_encode([]));
|
||||
echo "Cleared tasks.json\n";
|
||||
|
||||
// Step 2: Generate 10 standard tasks
|
||||
$tasks = [];
|
||||
foreach ($tripPairs as $pair) {
|
||||
$start = $ammanLocations[$pair[0]];
|
||||
$end = $ammanLocations[$pair[1]];
|
||||
$taskId = "prc_" . uniqid();
|
||||
|
||||
$tasks[] = [
|
||||
'task_id' => $taskId,
|
||||
'type' => 'price_check',
|
||||
'app' => 'com.taxif.passenger',
|
||||
'start_location' => $start['name'],
|
||||
'end_location' => $end['name'],
|
||||
'payload' => [
|
||||
'start_lat' => $start['lat'],
|
||||
'start_lng' => $start['lng'],
|
||||
'end_lat' => $end['lat'],
|
||||
'end_lng' => $end['lng'],
|
||||
],
|
||||
];
|
||||
echo " {$start['name']} → {$end['name']} ($taskId)\n";
|
||||
}
|
||||
|
||||
file_put_contents(TASKS_FILE, json_encode($tasks, JSON_PRETTY_PRINT));
|
||||
echo "\nDone! Generated " . count($tasks) . " standard tasks in tasks.json\n";
|
||||
echo "The bot will process them one-by-one via normal polling.\n";
|
||||
80
backend/bot/push_10_tasks.php
Normal file
80
backend/bot/push_10_tasks.php
Normal file
@@ -0,0 +1,80 @@
|
||||
<?php
|
||||
// =========================================================
|
||||
// backend/bot/push_10_tasks.php
|
||||
// CLI script: Clears old Redis queue and pushes 10 individual
|
||||
// tasks in the STANDARD format (start_location/end_location at top level)
|
||||
// so the cf696d05 (single-trip) Kotlin code can process them.
|
||||
// =========================================================
|
||||
|
||||
require_once __DIR__ . '/../core/bootstrap.php';
|
||||
|
||||
if (php_sapi_name() !== 'cli') {
|
||||
die("This script must be run from CLI.\n");
|
||||
}
|
||||
|
||||
if (!$redis) {
|
||||
die("Redis connection failed. Check your .env config.\n");
|
||||
}
|
||||
|
||||
$ammanLocations = [
|
||||
['name' => 'Abdoun', 'lat' => 31.9392, 'lng' => 35.8942],
|
||||
['name' => 'Jabal Amman', 'lat' => 31.9511, 'lng' => 35.9189],
|
||||
['name' => 'Sweileh', 'lat' => 32.0167, 'lng' => 35.8333],
|
||||
['name' => 'Khalda', 'lat' => 31.9861, 'lng' => 35.8450],
|
||||
['name' => 'Al-Jubaiha', 'lat' => 32.0194, 'lng' => 35.8753],
|
||||
['name' => 'Tla Al-Ali', 'lat' => 31.9961, 'lng' => 35.8647],
|
||||
['name' => 'Shmeisani', 'lat' => 31.9680, 'lng' => 35.9020],
|
||||
['name' => 'Um Uthaina', 'lat' => 31.9610, 'lng' => 35.8770],
|
||||
['name' => 'Marj Al-Hamam', 'lat' => 31.9000, 'lng' => 35.8500],
|
||||
['name' => 'Al-Muqabalain', 'lat' => 31.8720, 'lng' => 35.8900],
|
||||
['name' => 'Al-Qweismeh', 'lat' => 31.8900, 'lng' => 35.9200],
|
||||
['name' => 'Hashmi Al-Janoubi', 'lat' => 31.9350, 'lng' => 35.9350],
|
||||
['name' => 'Al-Madina', 'lat' => 31.8500, 'lng' => 35.8000],
|
||||
['name' => 'Sports City', 'lat' => 31.9820, 'lng' => 35.8880],
|
||||
];
|
||||
|
||||
$tripPairs = [
|
||||
[13, 5], // Sports City → Tla Al-Ali (~2km)
|
||||
[6, 0], // Shmeisani → Abdoun (~3km)
|
||||
[7, 1], // Um Uthaina → Jabal Amman (~4km)
|
||||
[3, 13], // Khalda → Sports City (~5km)
|
||||
[4, 2], // Al-Jubaiha → Sweileh (~5km)
|
||||
[0, 8], // Abdoun → Marj Al-Hamam (~6km)
|
||||
[1, 10], // Jabal Amman → Al-Qweismeh (~9km)
|
||||
[6, 9], // Shmeisani → Al-Muqabalain (~11km)
|
||||
[2, 12], // Sweileh → Al-Madina (~17km)
|
||||
[5, 11], // Tla Al-Ali → Hashmi (~5km)
|
||||
];
|
||||
|
||||
// Step 1: Clear the old queue
|
||||
$redis->del('queue:bot:tasks');
|
||||
echo "Cleared old queue: queue:bot:tasks\n";
|
||||
|
||||
// Step 2: Push 10 individual tasks in STANDARD format
|
||||
$count = 0;
|
||||
foreach ($tripPairs as $i => $pair) {
|
||||
$start = $ammanLocations[$pair[0]];
|
||||
$end = $ammanLocations[$pair[1]];
|
||||
$taskId = "prc_" . uniqid();
|
||||
|
||||
$task = [
|
||||
'task_id' => $taskId,
|
||||
'type' => 'price_check',
|
||||
'app' => 'com.taxif.passenger',
|
||||
'start_location' => $start['name'],
|
||||
'end_location' => $end['name'],
|
||||
'payload' => [
|
||||
'start_lat' => $start['lat'],
|
||||
'start_lng' => $start['lng'],
|
||||
'end_lat' => $end['lat'],
|
||||
'end_lng' => $end['lng'],
|
||||
],
|
||||
];
|
||||
|
||||
$redis->lpush('queue:bot:tasks', json_encode($task));
|
||||
$count++;
|
||||
echo " [$count] Pushed: {$start['name']} → {$end['name']} (task_id: $taskId)\n";
|
||||
}
|
||||
|
||||
echo "\nDone! Pushed $count individual tasks to Redis queue.\n";
|
||||
echo "The bot will process them one-by-one through normal polling (every ~15s).\n";
|
||||
Reference in New Issue
Block a user