<?php

use Illuminate\Foundation\Inspiring;
use Illuminate\Support\Facades\Artisan;
use Illuminate\Support\Facades\Schedule;


Artisan::command('inspire', function () {
    $this->comment(Inspiring::quote());
})->purpose('Display an inspiring quote');


Schedule::command('wip:generate-call-entries')
    ->everyFiveMinutes()
    ->withoutOverlapping();

// Close agent presence sessions abandoned without an explicit logout so the
// availability history and report stay accurate. Requires `schedule:run` (or a
// system cron invoking it) to be active in this environment.
Schedule::command('dialler:reap-stale-agents')->everyFiveMinutes();

// Capture the daily 5pm snapshot of stock/backlog dashboard metrics per solicitor
// so the dashboard can show whether those backlogs are trending down over time.
Schedule::command('dashboard:snapshot-metrics')
    ->dailyAt('17:00')
    ->withoutOverlapping();

// Send the all-solicitor management KPI summary to the global recipient whitelist.
Schedule::command('reports:send-daily-management')
    ->dailyAt('18:00')
    ->timezone(config('app.timezone'))
    ->withoutOverlapping()
    ->onOneServer();

