diff --git a/loction_server/api_get_nearby.php b/loction_server/api_get_nearby.php index 6699842b..08cd96ab 100755 --- a/loction_server/api_get_nearby.php +++ b/loction_server/api_get_nearby.php @@ -91,6 +91,10 @@ try { $validDrivers[] = $hasCache ? array_merge($public, [ 'id' => $d_id, 'driver_id' => $d_id, + 'latitude' => $d_coord[1], + 'longitude' => $d_coord[0], + 'heading' => $profile['heading'] ?? $public['heading'] ?? 0, + 'speed' => $profile['speed'] ?? $public['speed'] ?? 0, 'distance' => $d_dist, 'cached' => true ]) : [ diff --git a/loction_server/driver_socket.php b/loction_server/driver_socket.php index af8c02a4..ab81be63 100755 --- a/loction_server/driver_socket.php +++ b/loction_server/driver_socket.php @@ -890,6 +890,13 @@ $io->on('connection', function ($socket) use ($INTERNAL_KEY) { if ($needExpireRefresh || $needHmset) { $eventBuffer[$driverId]['expire'] = 900; $state['expire_ts'] = $now; + if (!isset($eventBuffer[$driverId]['hmset'])) { + $eventBuffer[$driverId]['hmset'] = [ + 'id' => $driverId, 'lat' => $lat, 'lng' => $lng, 'updated_at' => $now + ]; + } else { + $eventBuffer[$driverId]['hmset']['updated_at'] = $now; + } } if ($statusChanged) {