You've already forked Atomcms-edit
0c6c558a59
- Embed widget: standalone iframe player with dark/light/transparent themes, copy-paste embed code admin page - Real-time SSE: streaming now-playing/listeners/dj events, replaces polling in radio-player and embed - Song history: auto-records song changes to radio_song_plays table, Filament resource to view - DJ moderation: unified panel for shouts approval, song request queue, DJ applications - Auto DJ: playlist management with round-robin playback when no DJ is live - Refactored radio-player Alpine component to use EventSource API with auto-reconnect
55 lines
2.2 KiB
PHP
Executable File
55 lines
2.2 KiB
PHP
Executable File
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\Console;
|
|
|
|
use App\Console\Commands\AutoUpdateCommand;
|
|
use App\Console\Commands\DDoSDetectionCommand;
|
|
use App\Console\Commands\EmulatorMonitorCommand;
|
|
use App\Console\Commands\EmulatorUpdateCommand;
|
|
use App\Console\Commands\FixCodeCommand;
|
|
use App\Console\Commands\GenerateNitroConfigs;
|
|
use App\Console\Commands\NitroUpdateCommand;
|
|
use App\Console\Commands\SystemCheckCommand;
|
|
use App\Console\Commands\SystemHealthCommand;
|
|
use App\Console\Commands\SystemRepairCommand;
|
|
use Illuminate\Console\Scheduling\Schedule;
|
|
use Illuminate\Foundation\Console\Kernel as ConsoleKernel;
|
|
|
|
class Kernel extends ConsoleKernel
|
|
{
|
|
#[\Override]
|
|
protected function schedule(Schedule $schedule): void
|
|
{
|
|
$schedule->command('radio:check-dj')->everyMinute()->withoutOverlapping();
|
|
$schedule->command('radio:record-songs')->everyFifteenSeconds()->withoutOverlapping();
|
|
$schedule->command('radio:auto-dj')->everyMinute()->withoutOverlapping();
|
|
$schedule->command('maintenance:check-scheduled')->everyMinute()->withoutOverlapping();
|
|
$schedule->command('monitor:emulator')->everyMinute()->withoutOverlapping();
|
|
$schedule->command('monitor:ddos')->everyFiveMinutes()->withoutOverlapping();
|
|
$schedule->command('update:auto')->everyMinute()->withoutOverlapping();
|
|
$schedule->command('nitro:auto')->everyMinute()->withoutOverlapping();
|
|
$schedule->command('system:repair')->everyTenMinutes()->withoutOverlapping();
|
|
}
|
|
|
|
#[\Override]
|
|
protected function commands(): void
|
|
{
|
|
$this->load(__DIR__ . '/Commands');
|
|
|
|
$this->commands[] = SystemCheckCommand::class;
|
|
$this->commands[] = FixCodeCommand::class;
|
|
$this->commands[] = EmulatorMonitorCommand::class;
|
|
$this->commands[] = DDoSDetectionCommand::class;
|
|
$this->commands[] = EmulatorUpdateCommand::class;
|
|
$this->commands[] = AutoUpdateCommand::class;
|
|
$this->commands[] = NitroUpdateCommand::class;
|
|
$this->commands[] = SystemRepairCommand::class;
|
|
$this->commands[] = SystemHealthCommand::class;
|
|
$this->commands[] = GenerateNitroConfigs::class;
|
|
|
|
require base_path('routes/console.php');
|
|
}
|
|
}
|