Saúde

Monitor
{{ $monitor?->isFresh(20) ? 'ativo' : 'parado' }}
Recorder
{{ $recorder?->isFresh(20) ? 'ativo' : 'parado' }}
Câmeras
{{ $cameras->count() }}
ONLINE sem gravação
{{ $alerts->count() }}
@if ($alerts->isNotEmpty())
Alerta de primeira classe
@foreach ($alerts as $cam)
{{ $cam->name }} — {{ $cam->health_headline }}
@endforeach
@endif
Dimensões por câmera
@forelse ($cameras as $camera) @empty @endforelse
Câmera Resumo Câmera Stream FFmpeg Gravação Disco
{{ $camera->name }}
{{ $camera->host }}
{{ $camera->health_headline ?? '—' }}
Nenhuma câmera.

Estados abertos

    @forelse ($openEvents as $ev)
  • {{ $labels[$ev->dimension] ?? $ev->dimension }} · {{ $ev->camera?->name ?? 'sistema' }} · há {{ \App\Support\Duration::human($ev->durationSeconds()) }}
  • @empty
  • Nenhum evento aberto. O Monitor ainda não rodou?
  • @endforelse

Histórico recente

    @forelse ($history as $ev)
  • {{ $ev->camera?->name ?? 'sistema' }} · {{ $labels[$ev->dimension] ?? $ev->dimension }} · {{ \App\Monitor\HealthEvaluator::stateLabel($ev->state) }}
    {{ $ev->started_at?->timezone(config('app.timezone'))->format('d/m H:i:s') }} → {{ $ev->ended_at?->timezone(config('app.timezone'))->format('H:i:s') }} ({{ \App\Support\Duration::human($ev->durationSeconds()) }})
  • @empty
  • Sem transições ainda.
  • @endforelse