diff --git a/app/Http/Controllers/DeviceApiController.php b/app/Http/Controllers/DeviceApiController.php index 9748811..85fe9ab 100644 --- a/app/Http/Controllers/DeviceApiController.php +++ b/app/Http/Controllers/DeviceApiController.php @@ -102,7 +102,33 @@ class DeviceApiController extends Controller Command::whereIn('id', $cmds->pluck('id'))->update(['status' => 'sent', 'updated_at' => now()]); } - return response()->json(['commands' => $cmds]); + $payload = $cmds->map(function ($c) { + return [ + 'id' => $c->id, + 'type' => $c->command_type, // rename field to "type" + 'payload' => $c->payload ?? new \stdClass(), + 'priority' => $c->priority, + 'created_at' => $c->created_at, + ]; +}); + +// Mark as sent (optional – your current behavior) +if ($cmds->count()) { + \App\Models\Command::whereIn('id', $cmds->pluck('id')) + ->update(['status' => 'sent', 'updated_at' => now()]); +} + +$bodyArray = $payload->values()->all(); // a plain array +$body = json_encode($bodyArray, JSON_UNESCAPED_SLASHES); +$len = strlen($body); + +return response($body, 200) + ->header('Content-Type', 'application/json') + ->header('Content-Length', (string)$len) + ->header('Connection', 'keep-alive'); + + + // return response()->json(['commands' => $cmds]); } // POST /api/device/{imei}/command-receipts