comment(Inspiring::quote()); })->purpose('Display an inspiring quote'); Schedule::command('billing:process-schedules') ->dailyAt('00:05') ->timezone(config('app.timezone')) ->withoutOverlapping() ->onOneServer(); Schedule::command('notifications:prune') ->dailyAt('02:15') ->timezone(config('app.timezone')) ->withoutOverlapping() ->onOneServer(); Schedule::command('nas:check-mikrotiks') ->everyMinute() ->withoutOverlapping() ->onOneServer(); Schedule::call(function () { \App\Models\CustomerNasAccount::query()->whereIn('status', ['active','disabled']) ->where(fn ($q) => $q->whereNull('last_reconciled_at')->orWhere('last_reconciled_at','<=',now()->subMinutes(5))) ->select('id')->chunkById(200, fn ($rows) => $rows->each(fn ($row) => \App\Jobs\ReconcileCustomerNasAccount::dispatch($row->id))); })->everyMinute()->name('nas-reconcile-accounts')->withoutOverlapping()->onOneServer();